Release v0.1.4 with terrain rescanning and owner-published map updates
All checks were successful
Deploy MineGeo to Dokploy / deploy (push) Successful in 6m26s

This commit is contained in:
2026-10-28 19:40:53 +05:00
parent 5898ef35a5
commit 658c8974ac
53 changed files with 608 additions and 83 deletions

View File

@@ -1264,6 +1264,14 @@ export type Database = {
};
Returns: undefined;
};
publish_owner_update: {
Args: { p_dataset: string; p_owner: string };
Returns: undefined;
};
publish_own_contribution: {
Args: { p_contribution: string; p_owner: string };
Returns: undefined;
};
save_draft: {
Args: {
p_dataset: string;

View File

@@ -549,6 +549,12 @@
"Allow players to add panoramas with you": "Разрешить игрокам добавлять панорамы",
"As the owner, you can fill the map’s 24 panorama slots.": "Как владелец, ты можешь заполнить все 24 слота панорам.",
"Contribution server address": "Адрес сервера для добавлений",
"Contribution server addresses (separate with commas)": "Адреса серверов для добавлений (через запятую)",
"Enter up to 10 Minecraft hostnames or IPs separated by commas. These addresses are public when contributions are enabled. Clear them to turn off the server check.": "Укажи до 10 адресов Minecraft через запятую. При включённых добавлениях адреса видны всем. Очисти их, чтобы отключить проверку сервера.",
"Capture using any listed address. Uploads from other addresses are blocked.": "Снимай, подключившись по любому из указанных адресов. Загрузки с других адресов блокируются.",
"Publish update →": "Опубликовать обновление →",
"Update my map now →": "Обновить мою карту сейчас →",
"Map update published.": "Обновление карты опубликовано.",
"Contribution server:": "Сервер для добавлений:",
"Save server address": "Сохранить адрес сервера",
"Server address saved.": "Адрес сервера сохранён.",

View File

@@ -177,6 +177,14 @@ export function parseUploadManifest(value: unknown) {
return manifest;
}
export type DatasetManifest = z.infer<typeof datasetSchema>;
/** Terrain exports must be rendered by the standalone worker. */
export function usesTerrainRenderer(manifest: DatasetManifest) {
return (
!manifest.mediaFormat &&
(manifest.source === "plugin" ||
manifest.assets.some((a) => a.path === "terrain.json.gz"))
);
}
export type Bounds = z.infer<typeof boundsSchema>;
export type Point = z.infer<typeof pointSchema>;
export const difficulties = {