files.com
Version:
Files.com SDK for JavaScript
42 lines (30 loc) • 851 B
JavaScript
/* eslint-disable no-unused-vars */
import Api from '../Api'
import * as errors from '../Errors'
import {
getType, isArray, isInt, isObject, isString,
} from '../utils'
/* eslint-enable no-unused-vars */
/**
* Class Image
*/
class Image {
attributes = {}
options = {}
constructor(attributes = {}, options = {}) {
Object.entries(attributes).forEach(([key, value]) => {
const normalizedKey = key.replace('?', '')
this.attributes[normalizedKey] = value
Object.defineProperty(this, normalizedKey, { value, writable: false })
})
this.options = { ...options }
}
isLoaded = () => !!this.attributes.id
// string # Image name
getName = () => this.attributes.name
// string # Image URI
getUri = () => this.attributes.uri
}
export default Image
module.exports = Image
module.exports.default = Image