[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
pmb2
/
assets
/
tinymce
/
src
/
plugins
/
imagetools
/
src
/
main
/
js
/
core
/
[
Home
]
File: Proxy.js
/** * Proxy.js * * Released under LGPL License. * Copyright (c) 1999-2017 Ephox Corp. All rights reserved * * License: http://www.tinymce.com/license * Contributing: http://www.tinymce.com/contributing */ /** * Handles loading images though a proxy for working around cors. */ define( 'tinymce.plugins.imagetools.core.Proxy', [ 'tinymce.core.util.Promise', 'tinymce.core.util.Tools', 'tinymce.plugins.imagetools.core.Errors', 'tinymce.plugins.imagetools.core.Utils' ], function (Promise, Tools, Errors, Utils) { var appendApiKey = function (url, apiKey) { var separator = url.indexOf('?') === -1 ? '?' : '&'; if (/[?&]apiKey=/.test(url) || !apiKey) { return url; } else { return url + separator + 'apiKey=' + encodeURIComponent(apiKey); } }; var requestServiceBlob = function (url, apiKey) { return Utils.requestUrlAsBlob(appendApiKey(url, apiKey), { 'Content-Type': 'application/json;charset=UTF-8', 'tiny-api-key': apiKey }).then(function (result) { return result.status < 200 || result.status >= 300 ? Errors.handleServiceErrorResponse(result.status, result.blob) : Promise.resolve(result.blob); }); }; function requestBlob(url) { return Utils.requestUrlAsBlob(url, {}) .then(function (result) { return result.status < 200 || result.status >= 300 ? Errors.handleHttpError(result.status) : Promise.resolve(result.blob); }); } var getUrl = function (url, apiKey) { return apiKey ? requestServiceBlob(url, apiKey) : requestBlob(url); }; return { getUrl: getUrl }; } );