react-gallery-s3
TypeScript icon, indicating that this package has built-in type declarations

0.4.0 • Public • Published

react-gallery-s3

React gallery components and s3 storage.

Reference

Usage

Client components

Upload image component

import React from "react";
import UploadImage from "../src/UploadImage";

const Default = () => {
  const selected = (file: File) => {
    console.log(file);
  };

  // limit(optional) is MB
  return <UploadImage limit={10} selected={selected} />;
};

export default Default;

List images component

import React, { useState } from "react";
import ListImages from "../src/ListImages";

const Default = () => {
  const [open, setOpen] = useState(false);

  const handleOpen = () => {
    setOpen(true);
  };

  const handleClose = () => {
    setOpen(false);
  };

  const handleSelect = (image: string) => {
    console.log(image);
  };

  const handleDelete = (image: string) => {
    console.log(image);
  };

  const images = [
    "/dummy.jpg",
    "/dummy.jpg",
    "/dummy.jpg",
    "/dummy.jpg",
    "/dummy.jpg",
    "/dummy.jpg",
    "/dummy.jpg",
    "/dummy.jpg",
  ];

  return (
    <>
      <button onClick={handleOpen}>OPEN</button>
      <ListImages
        open={open}
        images={images}
        onSelect={handleSelect}
        onDelete={handleDelete}
        onClose={handleClose}
      />
    </>
  );
};

export default Default;

Server functions

import { S3ClientConfig } from "ts-s3";
import Connector from "../src/Connector";

const baseUrl = "http://localhost/";
const config: S3ClientConfig = { region: "us-east-1" };
const connector = new Connector(baseUrl, config);

// file upload to s3
const response = await connector.uploadImage(
  "dummy",
  "test/test.jpg",
  file
);

// get list from s3
const images = await connector.listImages("dummy", "test", 8);

// delete image on s3
const response = await connector.deleteImage("dummy", "test/content.json");

Preview

npm run preview

Upload image component

mv1

List images component

mv2

Package Sidebar

Install

npm i react-gallery-s3

Weekly Downloads

12

Version

0.4.0

License

MIT

Unpacked Size

34.8 kB

Total Files

27

Last publish

Collaborators

  • octerv