47 lines
1.3 KiB
TypeScript
47 lines
1.3 KiB
TypeScript
/**
|
|
* 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
|
|
import { Database } from '@db/sqlite';
|
|
export const sqlite = { DB: Database };
|
|
|
|
// Systemd Daemon Integration
|
|
import * as smartdaemon from '@push.rocks/smartdaemon';
|
|
export { smartdaemon };
|
|
|
|
// Docker API Client
|
|
import { DockerHost } from '@apiclient.xyz/docker';
|
|
export const docker = { Docker: DockerHost };
|
|
|
|
// Cloudflare DNS Management
|
|
import * as cloudflare from '@apiclient.xyz/cloudflare';
|
|
export { cloudflare };
|
|
|
|
// Let's Encrypt / ACME
|
|
import * as smartacme from '@push.rocks/smartacme';
|
|
export { smartacme };
|
|
|
|
// 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
|
|
import * as jwt from 'https://deno.land/x/djwt@v3.0.2/mod.ts';
|
|
export { jwt};
|
|
|
|
// Crypto key management
|
|
import { crypto } from 'https://deno.land/std@0.208.0/crypto/mod.ts';
|
|
export { crypto };
|