2025-10-28 13:05:42 +00:00
|
|
|
/**
|
|
|
|
|
* Centralized dependency imports for Onebox
|
|
|
|
|
*
|
|
|
|
|
* This file serves as the single source of truth for all external dependencies.
|
|
|
|
|
* All modules should import from this file using: import * as plugins from './onebox.plugins.ts'
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
// Deno Standard Library
|
|
|
|
|
import * as path from '@std/path';
|
|
|
|
|
import * as fs from '@std/fs';
|
|
|
|
|
import * as http from '@std/http';
|
|
|
|
|
import * as encoding from '@std/encoding';
|
|
|
|
|
|
|
|
|
|
export { path, fs, http, encoding };
|
|
|
|
|
|
|
|
|
|
// Database
|
2025-11-18 00:03:24 +00:00
|
|
|
import { Database } from '@db/sqlite';
|
|
|
|
|
export const sqlite = { DB: Database };
|
2025-10-28 13:05:42 +00:00
|
|
|
|
|
|
|
|
// Systemd Daemon Integration
|
|
|
|
|
import * as smartdaemon from '@push.rocks/smartdaemon';
|
|
|
|
|
export { smartdaemon };
|
|
|
|
|
|
|
|
|
|
// Docker API Client
|
2025-11-18 00:03:24 +00:00
|
|
|
import { DockerHost } from '@apiclient.xyz/docker';
|
|
|
|
|
export const docker = { Docker: DockerHost };
|
2025-10-28 13:05:42 +00:00
|
|
|
|
2025-11-18 19:34:26 +00:00
|
|
|
// Cloudflare DNS Management (API Client)
|
|
|
|
|
import * as cloudflare from '@apiclient.xyz/cloudflare';
|
|
|
|
|
export { cloudflare };
|
2025-10-28 13:05:42 +00:00
|
|
|
|
|
|
|
|
// Let's Encrypt / ACME
|
|
|
|
|
import * as smartacme from '@push.rocks/smartacme';
|
|
|
|
|
export { smartacme };
|
|
|
|
|
|
2025-11-24 01:31:15 +00:00
|
|
|
// Docker Registry (OCI Distribution Specification)
|
|
|
|
|
import * as smartregistry from '@push.rocks/smartregistry';
|
|
|
|
|
export { smartregistry };
|
|
|
|
|
|
|
|
|
|
// S3-compatible storage server
|
|
|
|
|
import * as smarts3 from '@push.rocks/smarts3';
|
|
|
|
|
export { smarts3 };
|
|
|
|
|
|
2025-10-28 13:05:42 +00:00
|
|
|
// Crypto utilities (for password hashing, encryption)
|
|
|
|
|
import * as bcrypt from 'https://deno.land/x/bcrypt@v0.4.1/mod.ts';
|
|
|
|
|
export { bcrypt };
|
|
|
|
|
|
|
|
|
|
// JWT for authentication
|
2025-11-18 00:03:24 +00:00
|
|
|
import * as jwt from 'https://deno.land/x/djwt@v3.0.2/mod.ts';
|
|
|
|
|
export { jwt};
|
2025-10-28 13:05:42 +00:00
|
|
|
|
|
|
|
|
// Crypto key management
|
|
|
|
|
import { crypto } from 'https://deno.land/std@0.208.0/crypto/mod.ts';
|
|
|
|
|
export { crypto };
|
2025-11-26 09:36:40 +00:00
|
|
|
|
|
|
|
|
// Node.js compatibility layer for HTTPS with SNI support
|
|
|
|
|
import * as nodeHttps from 'node:https';
|
|
|
|
|
import * as nodeHttp from 'node:http';
|
|
|
|
|
export { nodeHttps, nodeHttp };
|