This module offers react hooks to work with ImageKit platform
npm install react-imagekit-hooks
This module offers a set of hooks to work with ImageKit platorrm.
It uses imagekit-javascript module under the hood. Make sure to read documentation for it.
Run the following command to install timer in your repository:
```
npm i react-imagekit-hooks
1. Wrap your application by IKContextProvider
``
urlEndpoint: 'URL_ENDPOINT',
authenticator: async () => ({
token: '
expire: '...',
signature: '...'
})
}}>
2. Use one of the hooks: useIKImage or useIKUpload
Use this hook to build URL for an image available through ImageKit platform.
This hook can generate both a URL for a preview and for an original image.
1. imageOptions - same options as you send to imagekit.url method.
`
const image = useIKImageSrc({
imageOptions: {
path: "/my-image",
transformation: [
{
height: "300",
width: "250"
}
]
}
});
return
`
Use this hook to build an instance of image uploader that will upload image to ImageKit platform.
1. options - see here
2. onStart - a callback function that is called right after upload was started and before authentication is complete
3. onProgress - a callback function that is called whenever we have a progress in uploading a file
4. onSuccess - a callback function that is called when upload completes successfully
5. onError - a callback function that is called when upload fails
6. onAbort - a callback function that is called after upload was aborted
1. upload - a method to initiate background upload
2. uploadSync - a method to initiate upload that returns Promise
3. abort - a method to abort uploading process
4. progress - a property that holds current progress
`folder
const ikUpload = useIKUpload({
options: {
folder: ,
fileName,
useUniqueFileName: true
}
});
const onSubmitCallback = useCallback(async (values) => {
if (values.image instanceof File) {
const result = await ikUpload.uploadAsync(values.image);
}
}, []);
`
You are encouraged to contribute to this project as soon as you see any defects or issues.
This repository contains configuration for VSCode editor. It doesn't mean that you cannot use a different tool. Feel free to push configurations for your favourite code editor.
1. To build : npm run buildnpm run lint
2. To lint use: npm run prepare
3. To initialize pre-commit hooks use:
Before you get started make sure that there is noone working on an issue you are going to address.
As a first step, clone the repository and run npm i && npm run prepare` command to install all dependencies and initialize pre-commit hooks.
Create a branch to work on your code changes.
Once you are done with coding, create pull request and get an approval.
Lastly, enjoy your changes.