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

40
node_modules/astro/templates/env.mjs generated vendored Normal file
View File

@@ -0,0 +1,40 @@
/* eslint-disable @typescript-eslint/no-unused-vars */
// @ts-check
import { schema } from 'virtual:astro:env/internal';
import {
// biome-ignore lint/correctness/noUnusedImports: `_getEnv` is used by the generated code
getEnv as _getEnv,
createInvalidVariablesError,
getEnvFieldType,
setOnSetGetEnv,
validateEnvVariable,
} from 'astro/env/runtime';
// @ts-expect-error
/** @returns {string} */
// used while generating the virtual module
// biome-ignore lint/correctness/noUnusedFunctionParameters: `key` is used by the generated code
const getEnv = (key) => {
// @@GET_ENV@@
};
export const getSecret = (key) => {
return getEnv(key);
};
const _internalGetSecret = (key) => {
const rawVariable = getEnv(key);
const variable = rawVariable === '' ? undefined : rawVariable;
const options = schema[key];
const result = validateEnvVariable(variable, options);
if (result.ok) {
return result.value;
}
const type = getEnvFieldType(options);
throw createInvalidVariablesError(key, type, result);
};
setOnSetGetEnv(() => {
// @@ON_SET_GET_ENV@@
});