Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Léo-Paul Géneau
gitlab-ce
Commits
02fbdb8b
Commit
02fbdb8b
authored
Mar 08, 2017
by
Clement Ho
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'es6-class-issue' into 'master'
Convert Issue into ES6 class See merge request !9636
parents
a12664cd
6bf109b7
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
135 additions
and
140 deletions
+135
-140
app/assets/javascripts/dispatcher.js
app/assets/javascripts/dispatcher.js
+1
-1
app/assets/javascripts/issue.js
app/assets/javascripts/issue.js
+110
-116
changelogs/unreleased/es6-class-issue.yml
changelogs/unreleased/es6-class-issue.yml
+4
-0
spec/javascripts/issue_spec.js
spec/javascripts/issue_spec.js
+20
-23
No files found.
app/assets/javascripts/dispatcher.js
View file @
02fbdb8b
...
@@ -5,7 +5,6 @@ import PrometheusGraph from './monitoring/prometheus_graph'; // TODO: Maybe Make
...
@@ -5,7 +5,6 @@ import PrometheusGraph from './monitoring/prometheus_graph'; // TODO: Maybe Make
/* global ShortcutsNavigation */
/* global ShortcutsNavigation */
/* global Build */
/* global Build */
/* global Issuable */
/* global Issuable */
/* global Issue */
/* global ShortcutsIssuable */
/* global ShortcutsIssuable */
/* global ZenMode */
/* global ZenMode */
/* global Milestone */
/* global Milestone */
...
@@ -35,6 +34,7 @@ import PrometheusGraph from './monitoring/prometheus_graph'; // TODO: Maybe Make
...
@@ -35,6 +34,7 @@ import PrometheusGraph from './monitoring/prometheus_graph'; // TODO: Maybe Make
/* global ProjectShow */
/* global ProjectShow */
/* global Labels */
/* global Labels */
/* global Shortcuts */
/* global Shortcuts */
import
Issue
from
'
./issue
'
;
import
BindInOut
from
'
./behaviors/bind_in_out
'
;
import
BindInOut
from
'
./behaviors/bind_in_out
'
;
import
GroupsList
from
'
./groups_list
'
;
import
GroupsList
from
'
./groups_list
'
;
...
...
app/assets/javascripts/issue.js
View file @
02fbdb8b
...
@@ -5,12 +5,8 @@ require('./flash');
...
@@ -5,12 +5,8 @@ require('./flash');
require
(
'
vendor/jquery.waitforimages
'
);
require
(
'
vendor/jquery.waitforimages
'
);
require
(
'
./task_list
'
);
require
(
'
./task_list
'
);
(
function
()
{
class
Issue
{
var
bind
=
function
(
fn
,
me
)
{
return
function
()
{
return
fn
.
apply
(
me
,
arguments
);
};
};
constructor
()
{
this
.
Issue
=
(
function
()
{
function
Issue
()
{
this
.
submitNoteForm
=
bind
(
this
.
submitNoteForm
,
this
);
if
(
$
(
'
a.btn-close
'
).
length
)
{
if
(
$
(
'
a.btn-close
'
).
length
)
{
this
.
taskList
=
new
gl
.
TaskList
({
this
.
taskList
=
new
gl
.
TaskList
({
dataType
:
'
issue
'
,
dataType
:
'
issue
'
,
...
@@ -21,16 +17,15 @@ require('./task_list');
...
@@ -21,16 +17,15 @@ require('./task_list');
document
.
querySelector
(
'
#task_status_short
'
).
innerText
=
result
.
task_status_short
;
document
.
querySelector
(
'
#task_status_short
'
).
innerText
=
result
.
task_status_short
;
}
}
});
});
this
.
initIssueBtnEventListeners
();
Issue
.
initIssueBtnEventListeners
();
}
}
this
.
initMergeRequests
();
Issue
.
initMergeRequests
();
this
.
initRelatedBranches
();
Issue
.
initRelatedBranches
();
this
.
initCanCreateBranch
();
Issue
.
initCanCreateBranch
();
}
}
Issue
.
prototype
.
initIssueBtnEventListeners
=
function
()
{
static
initIssueBtnEventListeners
()
{
var
_this
,
issueFailMessage
;
var
issueFailMessage
;
_this
=
this
;
issueFailMessage
=
'
Unable to update this issue at this time.
'
;
issueFailMessage
=
'
Unable to update this issue at this time.
'
;
return
$
(
'
a.btn-close, a.btn-reopen
'
).
on
(
'
click
'
,
function
(
e
)
{
return
$
(
'
a.btn-close, a.btn-reopen
'
).
on
(
'
click
'
,
function
(
e
)
{
var
$this
,
isClose
,
shouldSubmit
,
url
;
var
$this
,
isClose
,
shouldSubmit
,
url
;
...
@@ -40,7 +35,7 @@ require('./task_list');
...
@@ -40,7 +35,7 @@ require('./task_list');
isClose
=
$this
.
hasClass
(
'
btn-close
'
);
isClose
=
$this
.
hasClass
(
'
btn-close
'
);
shouldSubmit
=
$this
.
hasClass
(
'
btn-comment
'
);
shouldSubmit
=
$this
.
hasClass
(
'
btn-comment
'
);
if
(
shouldSubmit
)
{
if
(
shouldSubmit
)
{
_this
.
submitNoteForm
(
$this
.
closest
(
'
form
'
));
Issue
.
submitNoteForm
(
$this
.
closest
(
'
form
'
));
}
}
$this
.
prop
(
'
disabled
'
,
true
);
$this
.
prop
(
'
disabled
'
,
true
);
url
=
$this
.
attr
(
'
href
'
);
url
=
$this
.
attr
(
'
href
'
);
...
@@ -76,17 +71,17 @@ require('./task_list');
...
@@ -76,17 +71,17 @@ require('./task_list');
}
}
});
});
});
});
};
}
Issue
.
prototype
.
submitNoteForm
=
function
(
form
)
{
static
submitNoteForm
(
form
)
{
var
noteText
;
var
noteText
;
noteText
=
form
.
find
(
"
textarea.js-note-text
"
).
val
();
noteText
=
form
.
find
(
"
textarea.js-note-text
"
).
val
();
if
(
noteText
.
trim
().
length
>
0
)
{
if
(
noteText
.
trim
().
length
>
0
)
{
return
form
.
submit
();
return
form
.
submit
();
}
}
};
}
Issue
.
prototype
.
initMergeRequests
=
function
()
{
static
initMergeRequests
()
{
var
$container
;
var
$container
;
$container
=
$
(
'
#merge-requests
'
);
$container
=
$
(
'
#merge-requests
'
);
return
$
.
getJSON
(
$container
.
data
(
'
url
'
)).
error
(
function
()
{
return
$
.
getJSON
(
$container
.
data
(
'
url
'
)).
error
(
function
()
{
...
@@ -96,9 +91,9 @@ require('./task_list');
...
@@ -96,9 +91,9 @@ require('./task_list');
return
$container
.
html
(
data
.
html
);
return
$container
.
html
(
data
.
html
);
}
}
});
});
};
}
Issue
.
prototype
.
initRelatedBranches
=
function
()
{
static
initRelatedBranches
()
{
var
$container
;
var
$container
;
$container
=
$
(
'
#related-branches
'
);
$container
=
$
(
'
#related-branches
'
);
return
$
.
getJSON
(
$container
.
data
(
'
url
'
)).
error
(
function
()
{
return
$
.
getJSON
(
$container
.
data
(
'
url
'
)).
error
(
function
()
{
...
@@ -108,9 +103,9 @@ require('./task_list');
...
@@ -108,9 +103,9 @@ require('./task_list');
return
$container
.
html
(
data
.
html
);
return
$container
.
html
(
data
.
html
);
}
}
});
});
};
}
Issue
.
prototype
.
initCanCreateBranch
=
function
()
{
static
initCanCreateBranch
()
{
var
$container
;
var
$container
;
$container
=
$
(
'
#new-branch
'
);
$container
=
$
(
'
#new-branch
'
);
// If the user doesn't have the required permissions the container isn't
// If the user doesn't have the required permissions the container isn't
...
@@ -128,8 +123,7 @@ require('./task_list');
...
@@ -128,8 +123,7 @@ require('./task_list');
return
$container
.
find
(
'
.unavailable
'
).
show
();
return
$container
.
find
(
'
.unavailable
'
).
show
();
}
}
});
});
};
}
}
return
Issue
;
export
default
Issue
;
})();
}).
call
(
window
);
changelogs/unreleased/es6-class-issue.yml
0 → 100644
View file @
02fbdb8b
---
title
:
Convert Issue into ES6 class
merge_request
:
9636
author
:
winniehell
spec/javascripts/issue_spec.js
View file @
02fbdb8b
/* eslint-disable space-before-function-paren, no-var, one-var, one-var-declaration-per-line, no-use-before-define, comma-dangle, max-len */
/* eslint-disable space-before-function-paren, no-var, one-var, one-var-declaration-per-line, no-use-before-define, comma-dangle, max-len */
/* global Issue */
import
Issue
from
'
~/issue
'
;
require
(
'
~/lib/utils/text_utility
'
);
require
(
'
~/lib/utils/text_utility
'
);
require
(
'
~/issue
'
);
(
function
()
{
describe
(
'
Issue
'
,
function
()
{
var
INVALID_URL
=
'
http://goesnowhere.nothing/whereami
'
;
var
INVALID_URL
=
'
http://goesnowhere.nothing/whereami
'
;
var
$boxClosed
,
$boxOpen
,
$btnClose
,
$btnReopen
;
var
$boxClosed
,
$boxOpen
,
$btnClose
,
$btnReopen
;
...
@@ -59,7 +58,6 @@ require('~/issue');
...
@@ -59,7 +58,6 @@ require('~/issue');
expect
(
$btnReopen
).
toHaveText
(
'
Reopen issue
'
);
expect
(
$btnReopen
).
toHaveText
(
'
Reopen issue
'
);
}
}
describe
(
'
Issue
'
,
function
()
{
describe
(
'
task lists
'
,
function
()
{
describe
(
'
task lists
'
,
function
()
{
beforeEach
(
function
()
{
beforeEach
(
function
()
{
loadFixtures
(
'
issues/issue-with-task-list.html.raw
'
);
loadFixtures
(
'
issues/issue-with-task-list.html.raw
'
);
...
@@ -82,7 +80,6 @@ require('~/issue');
...
@@ -82,7 +80,6 @@ require('~/issue');
$
(
'
.js-task-list-field
'
).
trigger
(
'
tasklist:changed
'
);
$
(
'
.js-task-list-field
'
).
trigger
(
'
tasklist:changed
'
);
});
});
});
});
});
describe
(
'
close issue
'
,
function
()
{
describe
(
'
close issue
'
,
function
()
{
beforeEach
(
function
()
{
beforeEach
(
function
()
{
...
@@ -165,4 +162,4 @@ require('~/issue');
...
@@ -165,4 +162,4 @@ require('~/issue');
expect
(
$
(
'
.issue_counter
'
)).
toHaveText
(
1
);
expect
(
$
(
'
.issue_counter
'
)).
toHaveText
(
1
);
});
});
});
});
})
.
call
(
window
)
;
});
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment