UNPKG

@nuxfly/core

Version:

Nuxt module for Fly.io integration with storage and database support

25 lines (24 loc) 906 B
import * as Minio from "minio"; let minioClient; let bucket; export default function usePrivateStorage() { if (!minioClient) { const nuxflyConfig = useRuntimeConfig().nuxfly || {}; console.log("\u2139 Initializing private storage with configuration:", nuxflyConfig.privateBucket); const endpointUrl = new URL(nuxflyConfig.privateBucket.s3Endpoint); minioClient = new Minio.Client({ endPoint: endpointUrl.hostname, port: endpointUrl.port ? parseInt(endpointUrl.port) : endpointUrl.protocol === "https:" ? 443 : 80, useSSL: endpointUrl.protocol === "https:", accessKey: nuxflyConfig.privateBucket.s3AccessKeyId, secretKey: nuxflyConfig.privateBucket.s3SecretAccessKey, region: nuxflyConfig.privateBucket.s3Region || "auto", pathStyle: true }); bucket = nuxflyConfig.privateBucket.s3Bucket; } return { minioClient, bucket }; }