Files
.github
cypress
dev-test
img
packages
netlify-cms
netlify-cms-backend-bitbucket
netlify-cms-backend-git-gateway
netlify-cms-backend-github
netlify-cms-backend-gitlab
netlify-cms-backend-test
netlify-cms-core
netlify-cms-editor-component-image
netlify-cms-lib-auth
netlify-cms-lib-util
src
__tests__
APIError.js
Cursor.js
EditorialWorkflowError.js
backendUtil.js
index.js
loadScript.js
localForage.js
path.js
promise.js
unsentRequest.js
CHANGELOG.md
README.md
package.json
webpack.config.js
netlify-cms-media-library-uploadcare
netlify-cms-ui-default
netlify-cms-widget-boolean
netlify-cms-widget-date
netlify-cms-widget-datetime
netlify-cms-widget-file
netlify-cms-widget-image
netlify-cms-widget-list
netlify-cms-widget-markdown
netlify-cms-widget-number
netlify-cms-widget-object
netlify-cms-widget-relation
netlify-cms-widget-select
netlify-cms-widget-string
netlify-cms-widget-text
scripts
website
.all-contributorsrc
.editorconfig
.eslintrc
.gitignore
.nvmrc
.prettierignore
.prettierrc
.stylelintrc
.travis.yml
CHANGELOG.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
babel.config.js
custom-preprocessor.js
cypress.json
jest.config.js
lerna.json
package.json
setupTestFramework.js
yarn.lock
static-cms/packages/netlify-cms-lib-util/src/loadScript.js

25 lines
661 B
JavaScript
Raw Normal View History

/**
* Simple script loader that returns a promise.
*/
export default function loadScript(url) {
return new Promise((resolve, reject) => {
let done = false;
const head = document.getElementsByTagName('head')[0];
const script = document.createElement('script');
script.src = url;
script.onload = script.onreadystatechange = function() {
if (
!done &&
(!this.readyState || this.readyState === 'loaded' || this.readyState === 'complete')
) {
done = true;
resolve();
} else {
reject();
}
};
script.onerror = error => reject(error);
head.appendChild(script);
});
}