summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke "Jared" Bennett <lbennett@gitlab.com>2017-05-10 13:43:31 +0100
committerLuke "Jared" Bennett <lbennett@gitlab.com>2017-05-10 13:43:31 +0100
commite0abb91fbc02e361071cec7443e2b70e49901df5 (patch)
tree40f7256db560240d9c5bde52b570a0f8ad0d54ad
parent97bd77b44f6643ce69b5de8e3fde2f9ab3fc9f67 (diff)
downloadgitlab-ce-load-balsamiq-viewer-async.tar.gz
Moved endpoint to be passed to loadFile and simplified $.ready syntaxload-balsamiq-viewer-async
-rw-r--r--app/assets/javascripts/blob/balsamiq/balsamiq_viewer.js9
-rw-r--r--app/assets/javascripts/blob/balsamiq_viewer.js8
-rw-r--r--spec/javascripts/blob/balsamiq/balsamiq_viewer_spec.js13
3 files changed, 12 insertions, 18 deletions
diff --git a/app/assets/javascripts/blob/balsamiq/balsamiq_viewer.js b/app/assets/javascripts/blob/balsamiq/balsamiq_viewer.js
index 4d72e36279b..7db33612416 100644
--- a/app/assets/javascripts/blob/balsamiq/balsamiq_viewer.js
+++ b/app/assets/javascripts/blob/balsamiq/balsamiq_viewer.js
@@ -13,15 +13,16 @@ const PREVIEW_TEMPLATE = _template(`
`);
class BalsamiqViewer {
- constructor(viewer, endpoint) {
+ constructor(viewer) {
this.viewer = viewer;
- this.endpoint = endpoint;
}
- loadFile() {
+ loadFile(endpoint) {
+ if (!endpoint) return;
+
const xhr = new XMLHttpRequest();
- xhr.open('GET', this.endpoint, true);
+ xhr.open('GET', endpoint, true);
xhr.responseType = 'arraybuffer';
xhr.onload = this.renderFile.bind(this);
diff --git a/app/assets/javascripts/blob/balsamiq_viewer.js b/app/assets/javascripts/blob/balsamiq_viewer.js
index 8030897cb94..f2969380be9 100644
--- a/app/assets/javascripts/blob/balsamiq_viewer.js
+++ b/app/assets/javascripts/blob/balsamiq_viewer.js
@@ -3,12 +3,12 @@ import BalsamiqViewer from './balsamiq/balsamiq_viewer';
function loadBalsamiqViewer() {
const viewer = document.getElementById('js-balsamiq-viewer');
- if (!(viewer instanceof Element) || !viewer.dataset.endpoint) return;
+ if (!(viewer instanceof Element)) return;
const endpoint = viewer.dataset.endpoint;
- const balsamiqViewer = new BalsamiqViewer(viewer, endpoint);
- balsamiqViewer.loadFile();
+ const balsamiqViewer = new BalsamiqViewer(viewer);
+ balsamiqViewer.loadFile(endpoint);
}
-$(document).ready(loadBalsamiqViewer);
+$(loadBalsamiqViewer);
diff --git a/spec/javascripts/blob/balsamiq/balsamiq_viewer_spec.js b/spec/javascripts/blob/balsamiq/balsamiq_viewer_spec.js
index 5b60719396b..cf7fb8cf4ca 100644
--- a/spec/javascripts/blob/balsamiq/balsamiq_viewer_spec.js
+++ b/spec/javascripts/blob/balsamiq/balsamiq_viewer_spec.js
@@ -4,39 +4,32 @@ import ClassSpecHelper from '../../helpers/class_spec_helper';
describe('BalsamiqViewer', () => {
let balsamiqViewer;
- let endpoint;
let viewer;
describe('class constructor', () => {
beforeEach(() => {
- endpoint = 'endpoint';
viewer = {};
- balsamiqViewer = new BalsamiqViewer(viewer, endpoint);
+ balsamiqViewer = new BalsamiqViewer(viewer);
});
it('should set .viewer', () => {
expect(balsamiqViewer.viewer).toBe(viewer);
});
-
- it('should set .endpoint', () => {
- expect(balsamiqViewer.endpoint).toBe(endpoint);
- });
});
describe('loadFile', () => {
+ const endpoint = 'endpoint';
let xhr;
beforeEach(() => {
- endpoint = 'endpoint';
xhr = jasmine.createSpyObj('xhr', ['open', 'send']);
balsamiqViewer = jasmine.createSpyObj('balsamiqViewer', ['renderFile']);
- balsamiqViewer.endpoint = endpoint;
spyOn(window, 'XMLHttpRequest').and.returnValue(xhr);
- BalsamiqViewer.prototype.loadFile.call(balsamiqViewer);
+ BalsamiqViewer.prototype.loadFile.call(balsamiqViewer, endpoint);
});
it('should call .open', () => {