npm install redux-imgurredux-imgur
Redux imgur uploader
[![NPM version][npm-image]][npm-url] [![Discord][discord-image]][discord-url]
npm i -S isomorphic-fetchnpm i -S redux-imgurnpm i -S lokhmakov/redux-imgur``js
require('redux-journal').enable()
import { write, error } from 'redux-journal'
import { manager } from 'redux-manager'
import { imgurLocal } from 'redux-imgur'
const api = imgurLocal()
manager.enableLogger(require('redux-node-logger')())
manager.getStore()
const fileToBase64 = (fileName) => new Buffer(require('fs').readFileSync(fileName)).toString('base64')
const clientID = 'adcf840e0bf408c'
const imageBase64 = fileToBase64('test.jpg')
api.upload({ clientID, imageBase64 }).then((imageLink) => {
write(imageLink)
}).catch((e) => {
error(e)
})
`
`js
require('redux-journal').enable()
import PouchDB from 'pouchdb'
const db = PouchDB('data', { db: require('memdown') })
import { manager } from 'redux-manager'
import { imgurActions } from 'redux-imgur'
import { imgurLocal } from 'redux-imgur'
import { imgurPersist } from 'redux-imgur'
imgurLocal()
imgurPersist({ db })
manager.enableLogger(require('redux-node-logger')())
manager.getStore()
const fileToBase64 = (fileName) => new Buffer(require('fs').readFileSync(fileName)).toString('base64')
const clientID = 'adcf840e0bf408c'
const imageBase64 = fileToBase64('test.jpg')
manager.dispatch(imgurActions.upload({ clientID, imageBase64 }), 'imgur')
`
#### client.js
`js
require('redux-journal').enable()
import injectTapEventPlugin from 'react-tap-event-plugin'
injectTapEventPlugin()
import PouchDB from 'pouchdb'
import { manager } from 'redux-manager'
import { imgurLocal } from 'redux-imgur'
import { imgurPersist } from 'redux-imgur'
const service1 = 'imgur'
const service2 = 'imgur2'
const service3 = 'imgur3'
imgurLocal({ serviceName: service1 })
imgurPersist({ db: PouchDB('redux-imgur')})
imgurLocal({ serviceName: service2 })
imgurLocal({ serviceName: service3 })
manager.enableLogger(require('redux-logger')())
const store = manager.getStore()
import React from 'react'
import ReactDOM from 'react-dom'
import { Provider } from 'react-redux'
import { connect } from 'react-redux'
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider'
import getMuiTheme from 'material-ui/styles/getMuiTheme'
import { ImgurPaper } from 'redux-imgur'
const ImgurPaper1 = connect(state => ({ imgur: state[service1] }))(ImgurPaper)
const muiTheme = getMuiTheme({ palette: { accent1Color: require('material-ui/styles/colors').deepOrange500 }})
const render = () => ReactDOM.render(
document.getElementById('app')
)
render()
``
[npm-url]: https://npmjs.org/package/redux-imgur
[npm-image]: https://img.shields.io/npm/v/redux-imgur.svg?style=flat
[discord-url]: https://discord.gg/CSJq3CU
[discord-image]: https://discordapp.com/api/servers/203409883263926272/widget.png?style=button