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 * as sqlite from '@db/sqlite';
|
||
|
|
export { sqlite };
|
||
|
|
|
||
|
|
// Systemd Daemon Integration
|
||
|
|
import * as smartdaemon from '@push.rocks/smartdaemon';
|
||
|
|
export { smartdaemon };
|
||
|
|
|
||
|
|
// Docker API Client
|
||
|
|
import * as docker from '@apiclient.xyz/docker';
|
||
|
|
export { docker };
|
||
|
|
|
||
|
|
// 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 { create as createJwt, verify as verifyJwt, decode as decodeJwt } from 'https://deno.land/x/djwt@v3.0.2/mod.ts';
|
||
|
|
export { createJwt, verifyJwt, decodeJwt };
|
||
|
|
|
||
|
|
// Crypto key management
|
||
|
|
import { crypto } from 'https://deno.land/std@0.208.0/crypto/mod.ts';
|
||
|
|
export { crypto };
|