0.1.19 • Published 5 months ago
easyload v0.1.19
EasyLoad
Простая абстракция для легкого управление S3 хранилищем timeweb.cloud в Next.js приложениях
Установка
$ npm i easyload
Создайте хук для управления хранилищем
// hooks/useEasyLoad.ts или любая другая папка
import {create} from "easyload";
// Конфигурация вашего хранилища
const s3Config = {
accessKeyId: "ct29404",
secretAccessKey: "2114a246c3132624487e430cece76025",
endpoint: "https://s3.timeweb.com",
s3ForcePathStyle: true,
region: "ru-1",
apiVersion: "latest",
};
// Теперь этот хук можно использовать в любом месте приложения
export const useEasyLoad = create(s3Config);
Использование на клиенте
import {useEasyLoad} from '@/hooks/useEasyLoad.ts'
...
export default function ClientComponent() {
const {easyLoad} = useEasyLoad();
return <div>Базовый клиентский компонент</div>;
}
Методы для управления хранилищем.
// Любой файл
const file = null;
// Имя бакета
const bucket = "my-backet";
// 1. Добавить файл в бакет
easyLoad.upload(file, bucket, replaceUrl?);
// Если нужно удалить файл при загрузке нового,
// допустим пользователь меняет аватар и прошлый уже не нужен,
// то можно использовать третий аргумент replaceUrl и указать ссылку на удаляемый файл
// 2. Удалить файл из бакета
easyLoad.delete("ссылка на файл", bucket);
// 3. Файлы в бакете
const filesInBucket = await easyLoad.getFiles(bucket);
// 4. Создать новый бакет
easyLoad.createBucket(bucket);
// 5. Список всех бакетов в вашем хранилище
const buckets = await easyLoad.getBuckets();
// 6. Удалить бакет
easyLoad.deleteBucket(bucket);
// Посмотреть текущую конфигурацию
easyLoad.configuration;
// Все методы возращают response от S3
// Вернет инфо о загруженном файле
// const res = easyLoad.upload(file, bucket);
0.1.19
5 months ago
0.1.18
5 months ago
0.1.17
5 months ago
0.1.16
5 months ago
0.1.15
5 months ago
0.1.14
5 months ago
0.1.13
5 months ago
0.1.12
5 months ago
0.1.11
5 months ago
0.1.10
5 months ago
0.1.9
5 months ago
0.1.8
5 months ago
0.1.7
5 months ago
0.1.6
5 months ago
0.1.5
5 months ago
0.1.4
5 months ago
0.1.3
5 months ago
0.1.2
5 months ago
0.1.1
5 months ago
0.1.0
5 months ago