UNPKG

@nuxfly/core

Version:

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

25 lines (24 loc) 898 B
import * as Minio from "minio"; let minioClient; let bucket; export default function usePublicStorage() { if (!minioClient) { const nuxflyConfig = useRuntimeConfig().nuxfly || {}; console.log("\u2139 Initializing public storage with configuration:", nuxflyConfig.publicBucket); const endpointUrl = new URL(nuxflyConfig.publicBucket.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.publicBucket.s3AccessKeyId, secretKey: nuxflyConfig.publicBucket.s3SecretAccessKey, region: nuxflyConfig.publicBucket.s3Region || "auto", pathStyle: true }); bucket = nuxflyConfig.publicBucket.s3Bucket; } return { minioClient, bucket }; }