123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- "use strict";
- var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
- _Object$defineProperty(exports, "__esModule", {
- value: true
- });
- exports.imageView2 = imageView2;
- exports.imageMogr2 = imageMogr2;
- exports.watermark = watermark;
- exports.imageInfo = imageInfo;
- exports.exif = exif;
- exports.pipeline = pipeline;
- var _utils = require("../utils");
- function getImageUrl(key, domain) {
- key = encodeURIComponent(key);
- if (domain.slice(domain.length - 1) !== '/') {
- domain += '/';
- }
- return domain + key;
- }
- function imageView2(op, key, domain) {
- if (!/^\d$/.test(String(op.mode))) {
- throw 'mode should be number in imageView2';
- }
- var mode = op.mode,
- w = op.w,
- h = op.h,
- q = op.q,
- format = op.format;
- if (!w && !h) {
- throw 'param w and h is empty in imageView2';
- }
- var imageUrl = 'imageView2/' + encodeURIComponent(mode);
- imageUrl += w ? '/w/' + encodeURIComponent(w) : '';
- imageUrl += h ? '/h/' + encodeURIComponent(h) : '';
- imageUrl += q ? '/q/' + encodeURIComponent(q) : '';
- imageUrl += format ? '/format/' + encodeURIComponent(format) : '';
- if (key && domain) {
- imageUrl = getImageUrl(key, domain) + '?' + imageUrl;
- }
- return imageUrl;
- } // invoke the imageMogr2 api of Qiniu
- function imageMogr2(op, key, domain) {
- var autoOrient = op['auto-orient'];
- var thumbnail = op.thumbnail,
- strip = op.strip,
- gravity = op.gravity,
- crop = op.crop,
- quality = op.quality,
- rotate = op.rotate,
- format = op.format,
- blur = op.blur;
- var imageUrl = 'imageMogr2';
- imageUrl += autoOrient ? '/auto-orient' : '';
- imageUrl += thumbnail ? '/thumbnail/' + encodeURIComponent(thumbnail) : '';
- imageUrl += strip ? '/strip' : '';
- imageUrl += gravity ? '/gravity/' + encodeURIComponent(gravity) : '';
- imageUrl += quality ? '/quality/' + encodeURIComponent(quality) : '';
- imageUrl += crop ? '/crop/' + encodeURIComponent(crop) : '';
- imageUrl += rotate ? '/rotate/' + encodeURIComponent(rotate) : '';
- imageUrl += format ? '/format/' + encodeURIComponent(format) : '';
- imageUrl += blur ? '/blur/' + encodeURIComponent(blur) : '';
- if (key && domain) {
- imageUrl = getImageUrl(key, domain) + '?' + imageUrl;
- }
- return imageUrl;
- } // invoke the watermark api of Qiniu
- function watermark(op, key, domain) {
- var mode = op.mode;
- if (!mode) {
- throw "mode can't be empty in watermark";
- }
- var imageUrl = 'watermark/' + mode;
- if (mode !== 1 && mode !== 2) {
- throw 'mode is wrong';
- }
- if (mode === 1) {
- var image = op.image;
- if (!image) {
- throw "image can't be empty in watermark";
- }
- imageUrl += image ? '/image/' + (0, _utils.urlSafeBase64Encode)(image) : '';
- }
- if (mode === 2) {
- var text = op.text,
- font = op.font,
- fontsize = op.fontsize,
- fill = op.fill;
- if (!text) {
- throw "text can't be empty in watermark";
- }
- imageUrl += text ? '/text/' + (0, _utils.urlSafeBase64Encode)(text) : '';
- imageUrl += font ? '/font/' + (0, _utils.urlSafeBase64Encode)(font) : '';
- imageUrl += fontsize ? '/fontsize/' + fontsize : '';
- imageUrl += fill ? '/fill/' + (0, _utils.urlSafeBase64Encode)(fill) : '';
- }
- var dissolve = op.dissolve,
- gravity = op.gravity,
- dx = op.dx,
- dy = op.dy;
- imageUrl += dissolve ? '/dissolve/' + encodeURIComponent(dissolve) : '';
- imageUrl += gravity ? '/gravity/' + encodeURIComponent(gravity) : '';
- imageUrl += dx ? '/dx/' + encodeURIComponent(dx) : '';
- imageUrl += dy ? '/dy/' + encodeURIComponent(dy) : '';
- if (key && domain) {
- imageUrl = getImageUrl(key, domain) + '?' + imageUrl;
- }
- return imageUrl;
- } // invoke the imageInfo api of Qiniu
- function imageInfo(key, domain) {
- var url = getImageUrl(key, domain) + '?imageInfo';
- return (0, _utils.request)(url, {
- method: 'GET'
- });
- } // invoke the exif api of Qiniu
- function exif(key, domain) {
- var url = getImageUrl(key, domain) + '?exif';
- return (0, _utils.request)(url, {
- method: 'GET'
- });
- }
- function pipeline(arr, key, domain) {
- var isArray = Object.prototype.toString.call(arr) === '[object Array]';
- var option;
- var errOp = false;
- var imageUrl = '';
- if (isArray) {
- for (var i = 0, len = arr.length; i < len; i++) {
- option = arr[i];
- if (!option.fop) {
- throw "fop can't be empty in pipeline";
- }
- switch (option.fop) {
- case 'watermark':
- imageUrl += watermark(option) + '|';
- break;
- case 'imageView2':
- imageUrl += imageView2(option) + '|';
- break;
- case 'imageMogr2':
- imageUrl += imageMogr2(option) + '|';
- break;
- default:
- errOp = true;
- break;
- }
- if (errOp) {
- throw 'fop is wrong in pipeline';
- }
- }
- if (key && domain) {
- imageUrl = getImageUrl(key, domain) + '?' + imageUrl;
- var length_1 = imageUrl.length;
- if (imageUrl.slice(length_1 - 1) === '|') {
- imageUrl = imageUrl.slice(0, length_1 - 1);
- }
- }
- return imageUrl;
- }
- throw "pipeline's first param should be array";
- }
|