blockmine 1.1.9 → 1.2.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/README.md +8 -3
  2. package/backend/cli.js +22 -15
  3. package/backend/nodemon.json +1 -1
  4. package/backend/package-lock.json +2539 -2539
  5. package/backend/package.json +20 -33
  6. package/backend/prisma/generated/client/default.d.ts +1 -0
  7. package/backend/prisma/generated/client/default.js +1 -0
  8. package/backend/prisma/generated/client/edge.d.ts +1 -0
  9. package/backend/prisma/generated/client/edge.js +280 -0
  10. package/backend/prisma/generated/client/index-browser.js +272 -0
  11. package/backend/prisma/generated/client/index.d.ts +16892 -0
  12. package/backend/prisma/generated/client/index.js +301 -0
  13. package/backend/prisma/generated/client/package.json +97 -0
  14. package/backend/prisma/generated/client/query_engine-windows.dll.node +0 -0
  15. package/backend/prisma/generated/client/runtime/edge-esm.js +31 -0
  16. package/backend/prisma/generated/client/runtime/edge.js +31 -0
  17. package/backend/prisma/generated/client/runtime/index-browser.d.ts +365 -0
  18. package/backend/prisma/generated/client/runtime/index-browser.js +13 -0
  19. package/backend/prisma/generated/client/runtime/library.d.ts +3403 -0
  20. package/backend/prisma/generated/client/runtime/library.js +143 -0
  21. package/backend/prisma/generated/client/runtime/react-native.js +80 -0
  22. package/backend/prisma/generated/client/runtime/wasm.js +32 -0
  23. package/backend/prisma/generated/client/schema.prisma +148 -0
  24. package/backend/prisma/generated/client/wasm.d.ts +1 -0
  25. package/backend/prisma/generated/client/wasm.js +272 -0
  26. package/backend/prisma/migrations/20250615232848_add_scheduled_tasks/migration.sql +13 -0
  27. package/backend/prisma/schema.prisma +151 -137
  28. package/backend/prisma/seed.js +18 -39
  29. package/backend/src/api/routes/bots.js +1 -1
  30. package/backend/src/api/routes/permissions.js +1 -1
  31. package/backend/src/api/routes/servers.js +1 -1
  32. package/backend/src/api/routes/settings.js +1 -1
  33. package/backend/src/api/routes/tasks.js +95 -0
  34. package/backend/src/core/BotManager.js +9 -1
  35. package/backend/src/core/PermissionManager.js +1 -1
  36. package/backend/src/core/PluginManager.js +65 -19
  37. package/backend/src/core/PluginService.js +1 -1
  38. package/backend/src/core/TaskScheduler.js +117 -0
  39. package/backend/src/core/UserService.js +1 -1
  40. package/backend/src/real-time/socketHandler.js +30 -30
  41. package/backend/src/server.js +22 -20
  42. package/frontend/dist/assets/index-4S5VJ11r.js +8179 -0
  43. package/frontend/dist/assets/index-B5_cke-P.css +1 -0
  44. package/frontend/dist/favicon.svg +2 -2
  45. package/frontend/dist/index.html +20 -20
  46. package/frontend/dist/logo.svg +178 -178
  47. package/frontend/dist/site.webmanifest +20 -20
  48. package/frontend/package.json +66 -65
  49. package/package.json +42 -38
  50. package/frontend/dist/assets/index-B6uPFKxW.css +0 -1
  51. package/frontend/dist/assets/index-BO23cI3z.js +0 -8179
package/README.md CHANGED
@@ -7,6 +7,8 @@
7
7
  <p>
8
8
  <img src="https://img.shields.io/github/stars/blockmineJS/blockmine?style=for-the-badge&logo=github" alt="Stars">
9
9
  <img src="https://img.shields.io/github/last-commit/blockmineJS/blockmine?style=for-the-badge&logo=git" alt="Last Commit">
10
+ <a href="http://185.65.200.184:3000/api/stats" target="_blank">
11
+ <img src="https://img.shields.io/endpoint?url=https://blockmine-proxy.vercel.app/api/shield&style=for-the-badge&logo=minecraft&logoColor=white" alt="Ботов онлайн">
10
12
  </p>
11
13
  </div>
12
14
 
@@ -39,7 +41,7 @@ BlockMine — это open-source решение для централизова
39
41
 
40
42
  ## 🚀 Ключевые возможности
41
43
 
42
- * **💻 Современный веб-интерфейс**: Адаптивная панель на React и Tailwind CSS для управления ботами, серверами и плагинами
44
+ * **💻 Современный веб-интерфейс**: Адаптивная панель на React и Tailwind CSS для управления ботами, серверами и плагинами с любого устройства.
43
45
  * **🤖 Комплексное управление ботами**:
44
46
  * Запуск, остановка и перезапуск ботов в один клик.
45
47
  * Интерактивная консоль для каждого бота.
@@ -75,7 +77,7 @@ BlockMine — это open-source решение для централизова
75
77
  ```
76
78
  3. Готово! Скрипт автоматически скачает все необходимое, настроит базу данных и запустит сервер.
77
79
 
78
- Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
80
+
79
81
  > ⚠️ **Важно**: Если выскакивает ошибка - Невозможно загрузить файл C:\Program Files\nodejs\npx.ps1, так как выполнение сценариев отключено в этой системе. - Выполните `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser`
80
82
 
81
83
  После успешного запуска вы увидите в консоли:
@@ -107,4 +109,7 @@ npm install
107
109
 
108
110
  ```bash
109
111
  npm run dev
110
- ```
112
+ ```
113
+
114
+ Панель управления доступна по адресу: http://localhost:5173
115
+ там на лету будет менятся страничка если изменяете. на 3001 базовая собранная только
package/backend/cli.js CHANGED
@@ -6,13 +6,17 @@ const { execSync } = require('child_process');
6
6
  const { startServer } = require('./src/server.js');
7
7
 
8
8
  const DATA_DIR = path.join(os.homedir(), '.blockmine');
9
- const prismaSchemaPath = path.join(__dirname, 'prisma', 'schema.prisma');
9
+ if (!fs.existsSync(DATA_DIR)) {
10
+ fs.mkdirSync(DATA_DIR, { recursive: true });
11
+ }
12
+ process.env.DATABASE_URL = `file:${path.join(DATA_DIR, 'blockmine.db')}`;
13
+
14
+ const schemaPath = path.resolve(__dirname, 'prisma', 'schema.prisma');
10
15
 
11
16
  function runCommand(command) {
12
17
  try {
13
18
  console.log(`> ${command}`);
14
- const shell = process.platform === 'win32' ? 'cmd.exe' : '/bin/sh';
15
- execSync(command, { stdio: 'inherit', cwd: __dirname, shell: shell });
19
+ execSync(command, { stdio: 'inherit', cwd: __dirname });
16
20
  } catch (e) {
17
21
  console.error(`Команда "${command}" не удалась:`, e);
18
22
  process.exit(1);
@@ -21,28 +25,31 @@ function runCommand(command) {
21
25
 
22
26
  async function main() {
23
27
  console.log('Запуск панели управления BlockMine...');
24
-
28
+
29
+ const migrateCommand = `npx prisma migrate deploy --schema="${schemaPath}"`;
30
+ const seedCommand = `npx prisma db seed --schema="${schemaPath}"`;
31
+
25
32
  const dbPath = path.join(DATA_DIR, 'blockmine.db');
26
-
27
33
  if (!fs.existsSync(dbPath)) {
28
34
  console.log('База данных не найдена. Создаем и применяем все миграции...');
29
- runCommand(`npx prisma migrate deploy --schema=${prismaSchemaPath}`);
30
-
35
+ runCommand(migrateCommand);
31
36
  console.log('Заполнение базы данных начальными данными (серверами)...');
32
- const seedScriptPath = path.join(__dirname, 'prisma', 'seed.js');
33
- runCommand(`node ${seedScriptPath}`);
34
-
37
+ runCommand(seedCommand);
35
38
  console.log('Первоначальная настройка базы данных завершена.');
36
39
  } else {
37
40
  console.log('Проверка и применение обновлений базы данных...');
38
- runCommand(`npx prisma migrate deploy --schema=${prismaSchemaPath}`);
41
+ runCommand(migrateCommand);
39
42
  console.log('База данных в актуальном состоянии.');
40
43
  }
41
44
 
42
45
  await startServer();
43
46
  }
44
47
 
45
- main().catch(e => {
46
- console.error('Критическая ошибка при запуске:', e);
47
- process.exit(1);
48
- });
48
+ if (require.main === module) {
49
+ main().catch(e => {
50
+ console.error('Критическая ошибка при запуске:', e);
51
+ process.exit(1);
52
+ });
53
+ }
54
+
55
+ module.exports = { main };
@@ -2,7 +2,7 @@
2
2
  "watch": ["src/"],
3
3
  "ext": "js,mjs,cjs,json",
4
4
  "ignore": ["storage/", "prisma/dev.db", "prisma/dev.db-journal"],
5
- "exec": "node src/server.js",
5
+ "exec": "node cli.js",
6
6
  "signal": "SIGINT",
7
7
  "delay": 1500
8
8
  }