Skip to content
GitLab
Explore
Projects
Groups
Snippets
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Bootstrap
bootstrap
Commits
fe73da98
Commit
fe73da98
authored
3 years ago
by
XhmikosR
Browse files
Options
Download
Email Patches
Plain Diff
JS: minor refactoring
* shorten block comments * reorder constants
parent
4f0187c8
v4-dev-dropdown-hide-method
v4-dev
v4.6.2
v4.6.1
1 merge request
!36532
My v4 dev
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
js/src/alert.js
+6
-18
js/src/alert.js
js/src/button.js
+7
-18
js/src/button.js
js/src/carousel.js
+29
-40
js/src/carousel.js
js/src/collapse.js
+18
-30
js/src/collapse.js
js/src/dropdown.js
+11
-26
js/src/dropdown.js
js/src/modal.js
+23
-35
js/src/modal.js
js/src/popover.js
+7
-17
js/src/popover.js
js/src/scrollspy.js
+17
-29
js/src/scrollspy.js
js/src/tab.js
+8
-20
js/src/tab.js
js/src/toast.js
+12
-22
js/src/toast.js
js/src/tooltip.js
+35
-49
js/src/tooltip.js
js/src/util.js
+1
-5
js/src/util.js
with
174 additions
and
309 deletions
+174
-309
js/src/alert.js
+
6
-
18
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
alert
'
const
NAME
=
'
alert
'
...
@@ -21,20 +19,18 @@ const EVENT_KEY = `.${DATA_KEY}`
...
@@ -21,20 +19,18 @@ const EVENT_KEY = `.${DATA_KEY}`
const
DATA_API_KEY
=
'
.data-api
'
const
DATA_API_KEY
=
'
.data-api
'
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
SELECTOR_DISMISS
=
'
[data-dismiss="alert"]
'
const
CLASS_NAME_ALERT
=
'
alert
'
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
const
EVENT_CLOSE
=
`close
${
EVENT_KEY
}
`
const
EVENT_CLOSE
=
`close
${
EVENT_KEY
}
`
const
EVENT_CLOSED
=
`closed
${
EVENT_KEY
}
`
const
EVENT_CLOSED
=
`closed
${
EVENT_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_ALERT
=
'
alert
'
const
SELECTOR_DISMISS
=
'
[data-dismiss="alert"]
'
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Alert
{
class
Alert
{
...
@@ -43,13 +39,11 @@ class Alert {
...
@@ -43,13 +39,11 @@ class Alert {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
// Public
// Public
close
(
element
)
{
close
(
element
)
{
let
rootElement
=
this
.
_element
let
rootElement
=
this
.
_element
if
(
element
)
{
if
(
element
)
{
...
@@ -71,7 +65,6 @@ class Alert {
...
@@ -71,7 +65,6 @@ class Alert {
}
}
// Private
// Private
_getRootElement
(
element
)
{
_getRootElement
(
element
)
{
const
selector
=
Util
.
getSelectorFromElement
(
element
)
const
selector
=
Util
.
getSelectorFromElement
(
element
)
let
parent
=
false
let
parent
=
false
...
@@ -117,7 +110,6 @@ class Alert {
...
@@ -117,7 +110,6 @@ class Alert {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
const
$element
=
$
(
this
)
const
$element
=
$
(
this
)
...
@@ -146,9 +138,7 @@ class Alert {
...
@@ -146,9 +138,7 @@ class Alert {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
).
on
(
$
(
document
).
on
(
...
@@ -158,9 +148,7 @@ $(document).on(
...
@@ -158,9 +148,7 @@ $(document).on(
)
)
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Alert
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Alert
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/button.js
+
7
-
18
View file @
fe73da98
...
@@ -8,9 +8,7 @@
...
@@ -8,9 +8,7 @@
import
$
from
'
jquery
'
import
$
from
'
jquery
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
button
'
const
NAME
=
'
button
'
...
@@ -24,6 +22,11 @@ const CLASS_NAME_ACTIVE = 'active'
...
@@ -24,6 +22,11 @@ const CLASS_NAME_ACTIVE = 'active'
const
CLASS_NAME_BUTTON
=
'
btn
'
const
CLASS_NAME_BUTTON
=
'
btn
'
const
CLASS_NAME_FOCUS
=
'
focus
'
const
CLASS_NAME_FOCUS
=
'
focus
'
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_FOCUS_BLUR_DATA_API
=
`focus
${
EVENT_KEY
}${
DATA_API_KEY
}
`
+
`blur
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_LOAD_DATA_API
=
`load
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
SELECTOR_DATA_TOGGLE_CARROT
=
'
[data-toggle^="button"]
'
const
SELECTOR_DATA_TOGGLE_CARROT
=
'
[data-toggle^="button"]
'
const
SELECTOR_DATA_TOGGLES
=
'
[data-toggle="buttons"]
'
const
SELECTOR_DATA_TOGGLES
=
'
[data-toggle="buttons"]
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="button"]
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="button"]
'
...
@@ -32,15 +35,8 @@ const SELECTOR_INPUT = 'input:not([type="hidden"])'
...
@@ -32,15 +35,8 @@ const SELECTOR_INPUT = 'input:not([type="hidden"])'
const
SELECTOR_ACTIVE
=
'
.active
'
const
SELECTOR_ACTIVE
=
'
.active
'
const
SELECTOR_BUTTON
=
'
.btn
'
const
SELECTOR_BUTTON
=
'
.btn
'
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_FOCUS_BLUR_DATA_API
=
`focus
${
EVENT_KEY
}${
DATA_API_KEY
}
`
+
`blur
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_LOAD_DATA_API
=
`load
${
EVENT_KEY
}${
DATA_API_KEY
}
`
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Button
{
class
Button
{
...
@@ -50,13 +46,11 @@ class Button {
...
@@ -50,13 +46,11 @@ class Button {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
// Public
// Public
toggle
()
{
toggle
()
{
let
triggerChangeEvent
=
true
let
triggerChangeEvent
=
true
let
addAriaPressed
=
true
let
addAriaPressed
=
true
...
@@ -111,7 +105,6 @@ class Button {
...
@@ -111,7 +105,6 @@ class Button {
}
}
// Static
// Static
static
_jQueryInterface
(
config
,
avoidTriggerChange
)
{
static
_jQueryInterface
(
config
,
avoidTriggerChange
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
const
$element
=
$
(
this
)
const
$element
=
$
(
this
)
...
@@ -132,9 +125,7 @@ class Button {
...
@@ -132,9 +125,7 @@ class Button {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
)
$
(
document
)
...
@@ -194,9 +185,7 @@ $(window).on(EVENT_LOAD_DATA_API, () => {
...
@@ -194,9 +185,7 @@ $(window).on(EVENT_LOAD_DATA_API, () => {
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Button
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Button
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/carousel.js
+
29
-
40
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
carousel
'
const
NAME
=
'
carousel
'
...
@@ -25,23 +23,14 @@ const ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key
...
@@ -25,23 +23,14 @@ const ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key
const
TOUCHEVENT_COMPAT_WAIT
=
500
// Time for mouse compat events to fire after touch
const
TOUCHEVENT_COMPAT_WAIT
=
500
// Time for mouse compat events to fire after touch
const
SWIPE_THRESHOLD
=
40
const
SWIPE_THRESHOLD
=
40
const
Default
=
{
const
CLASS_NAME_CAROUSEL
=
'
carousel
'
interval
:
5000
,
const
CLASS_NAME_ACTIVE
=
'
active
'
keyboard
:
true
,
const
CLASS_NAME_SLIDE
=
'
slide
'
slide
:
false
,
const
CLASS_NAME_RIGHT
=
'
carousel-item-right
'
pause
:
'
hover
'
,
const
CLASS_NAME_LEFT
=
'
carousel-item-left
'
wrap
:
true
,
const
CLASS_NAME_NEXT
=
'
carousel-item-next
'
touch
:
true
const
CLASS_NAME_PREV
=
'
carousel-item-prev
'
}
const
CLASS_NAME_POINTER_EVENT
=
'
pointer-event
'
const
DefaultType
=
{
interval
:
'
(number|boolean)
'
,
keyboard
:
'
boolean
'
,
slide
:
'
(boolean|string)
'
,
pause
:
'
(string|boolean)
'
,
wrap
:
'
boolean
'
,
touch
:
'
boolean
'
}
const
DIRECTION_NEXT
=
'
next
'
const
DIRECTION_NEXT
=
'
next
'
const
DIRECTION_PREV
=
'
prev
'
const
DIRECTION_PREV
=
'
prev
'
...
@@ -62,15 +51,6 @@ const EVENT_DRAG_START = `dragstart${EVENT_KEY}`
...
@@ -62,15 +51,6 @@ const EVENT_DRAG_START = `dragstart${EVENT_KEY}`
const
EVENT_LOAD_DATA_API
=
`load
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_LOAD_DATA_API
=
`load
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_CAROUSEL
=
'
carousel
'
const
CLASS_NAME_ACTIVE
=
'
active
'
const
CLASS_NAME_SLIDE
=
'
slide
'
const
CLASS_NAME_RIGHT
=
'
carousel-item-right
'
const
CLASS_NAME_LEFT
=
'
carousel-item-left
'
const
CLASS_NAME_NEXT
=
'
carousel-item-next
'
const
CLASS_NAME_PREV
=
'
carousel-item-prev
'
const
CLASS_NAME_POINTER_EVENT
=
'
pointer-event
'
const
SELECTOR_ACTIVE
=
'
.active
'
const
SELECTOR_ACTIVE
=
'
.active
'
const
SELECTOR_ACTIVE_ITEM
=
'
.active.carousel-item
'
const
SELECTOR_ACTIVE_ITEM
=
'
.active.carousel-item
'
const
SELECTOR_ITEM
=
'
.carousel-item
'
const
SELECTOR_ITEM
=
'
.carousel-item
'
...
@@ -80,16 +60,33 @@ const SELECTOR_INDICATORS = '.carousel-indicators'
...
@@ -80,16 +60,33 @@ const SELECTOR_INDICATORS = '.carousel-indicators'
const
SELECTOR_DATA_SLIDE
=
'
[data-slide], [data-slide-to]
'
const
SELECTOR_DATA_SLIDE
=
'
[data-slide], [data-slide-to]
'
const
SELECTOR_DATA_RIDE
=
'
[data-ride="carousel"]
'
const
SELECTOR_DATA_RIDE
=
'
[data-ride="carousel"]
'
const
Default
=
{
interval
:
5000
,
keyboard
:
true
,
slide
:
false
,
pause
:
'
hover
'
,
wrap
:
true
,
touch
:
true
}
const
DefaultType
=
{
interval
:
'
(number|boolean)
'
,
keyboard
:
'
boolean
'
,
slide
:
'
(boolean|string)
'
,
pause
:
'
(string|boolean)
'
,
wrap
:
'
boolean
'
,
touch
:
'
boolean
'
}
const
PointerType
=
{
const
PointerType
=
{
TOUCH
:
'
touch
'
,
TOUCH
:
'
touch
'
,
PEN
:
'
pen
'
PEN
:
'
pen
'
}
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Carousel
{
class
Carousel
{
constructor
(
element
,
config
)
{
constructor
(
element
,
config
)
{
this
.
_items
=
null
this
.
_items
=
null
...
@@ -111,7 +108,6 @@ class Carousel {
...
@@ -111,7 +108,6 @@ class Carousel {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -121,7 +117,6 @@ class Carousel {
...
@@ -121,7 +117,6 @@ class Carousel {
}
}
// Public
// Public
next
()
{
next
()
{
if
(
!
this
.
_isSliding
)
{
if
(
!
this
.
_isSliding
)
{
this
.
_slide
(
DIRECTION_NEXT
)
this
.
_slide
(
DIRECTION_NEXT
)
...
@@ -220,7 +215,6 @@ class Carousel {
...
@@ -220,7 +215,6 @@ class Carousel {
}
}
// Private
// Private
_getConfig
(
config
)
{
_getConfig
(
config
)
{
config
=
{
config
=
{
...
Default
,
...
Default
,
...
@@ -508,7 +502,6 @@ class Carousel {
...
@@ -508,7 +502,6 @@ class Carousel {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
let
data
=
$
(
this
).
data
(
DATA_KEY
)
let
data
=
$
(
this
).
data
(
DATA_KEY
)
...
@@ -580,9 +573,7 @@ class Carousel {
...
@@ -580,9 +573,7 @@ class Carousel {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
).
on
(
EVENT_CLICK_DATA_API
,
SELECTOR_DATA_SLIDE
,
Carousel
.
_dataApiClickHandler
)
$
(
document
).
on
(
EVENT_CLICK_DATA_API
,
SELECTOR_DATA_SLIDE
,
Carousel
.
_dataApiClickHandler
)
...
@@ -596,9 +587,7 @@ $(window).on(EVENT_LOAD_DATA_API, () => {
...
@@ -596,9 +587,7 @@ $(window).on(EVENT_LOAD_DATA_API, () => {
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Carousel
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Carousel
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/collapse.js
+
18
-
30
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
collapse
'
const
NAME
=
'
collapse
'
...
@@ -21,22 +19,6 @@ const EVENT_KEY = `.${DATA_KEY}`
...
@@ -21,22 +19,6 @@ const EVENT_KEY = `.${DATA_KEY}`
const
DATA_API_KEY
=
'
.data-api
'
const
DATA_API_KEY
=
'
.data-api
'
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
Default
=
{
toggle
:
true
,
parent
:
''
}
const
DefaultType
=
{
toggle
:
'
boolean
'
,
parent
:
'
(string|element)
'
}
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOWN
=
`shown
${
EVENT_KEY
}
`
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_COLLAPSE
=
'
collapse
'
const
CLASS_NAME_COLLAPSE
=
'
collapse
'
const
CLASS_NAME_COLLAPSING
=
'
collapsing
'
const
CLASS_NAME_COLLAPSING
=
'
collapsing
'
...
@@ -45,13 +27,27 @@ const CLASS_NAME_COLLAPSED = 'collapsed'
...
@@ -45,13 +27,27 @@ const CLASS_NAME_COLLAPSED = 'collapsed'
const
DIMENSION_WIDTH
=
'
width
'
const
DIMENSION_WIDTH
=
'
width
'
const
DIMENSION_HEIGHT
=
'
height
'
const
DIMENSION_HEIGHT
=
'
height
'
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOWN
=
`shown
${
EVENT_KEY
}
`
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
SELECTOR_ACTIVES
=
'
.show, .collapsing
'
const
SELECTOR_ACTIVES
=
'
.show, .collapsing
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="collapse"]
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="collapse"]
'
const
Default
=
{
toggle
:
true
,
parent
:
''
}
const
DefaultType
=
{
toggle
:
'
boolean
'
,
parent
:
'
(string|element)
'
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Collapse
{
class
Collapse
{
...
@@ -89,7 +85,6 @@ class Collapse {
...
@@ -89,7 +85,6 @@ class Collapse {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -99,7 +94,6 @@ class Collapse {
...
@@ -99,7 +94,6 @@ class Collapse {
}
}
// Public
// Public
toggle
()
{
toggle
()
{
if
(
$
(
this
.
_element
).
hasClass
(
CLASS_NAME_SHOW
))
{
if
(
$
(
this
.
_element
).
hasClass
(
CLASS_NAME_SHOW
))
{
this
.
hide
()
this
.
hide
()
...
@@ -262,7 +256,6 @@ class Collapse {
...
@@ -262,7 +256,6 @@ class Collapse {
}
}
// Private
// Private
_getConfig
(
config
)
{
_getConfig
(
config
)
{
config
=
{
config
=
{
...
Default
,
...
Default
,
...
@@ -316,7 +309,6 @@ class Collapse {
...
@@ -316,7 +309,6 @@ class Collapse {
}
}
// Static
// Static
static
_getTargetFromElement
(
element
)
{
static
_getTargetFromElement
(
element
)
{
const
selector
=
Util
.
getSelectorFromElement
(
element
)
const
selector
=
Util
.
getSelectorFromElement
(
element
)
return
selector
?
document
.
querySelector
(
selector
)
:
null
return
selector
?
document
.
querySelector
(
selector
)
:
null
...
@@ -353,9 +345,7 @@ class Collapse {
...
@@ -353,9 +345,7 @@ class Collapse {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
).
on
(
EVENT_CLICK_DATA_API
,
SELECTOR_DATA_TOGGLE
,
function
(
event
)
{
$
(
document
).
on
(
EVENT_CLICK_DATA_API
,
SELECTOR_DATA_TOGGLE
,
function
(
event
)
{
...
@@ -377,9 +367,7 @@ $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
...
@@ -377,9 +367,7 @@ $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Collapse
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Collapse
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/dropdown.js
+
11
-
26
View file @
fe73da98
...
@@ -10,9 +10,7 @@ import Popper from 'popper.js'
...
@@ -10,9 +10,7 @@ import Popper from 'popper.js'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
dropdown
'
const
NAME
=
'
dropdown
'
...
@@ -29,6 +27,14 @@ const ARROW_DOWN_KEYCODE = 40 // KeyboardEvent.which value for down arrow key
...
@@ -29,6 +27,14 @@ const ARROW_DOWN_KEYCODE = 40 // KeyboardEvent.which value for down arrow key
const
RIGHT_MOUSE_BUTTON_WHICH
=
3
// MouseEvent.which value for the right button (assuming a right-handed mouse)
const
RIGHT_MOUSE_BUTTON_WHICH
=
3
// MouseEvent.which value for the right button (assuming a right-handed mouse)
const
REGEXP_KEYDOWN
=
new
RegExp
(
`
${
ARROW_UP_KEYCODE
}
|
${
ARROW_DOWN_KEYCODE
}
|
${
ESCAPE_KEYCODE
}
`
)
const
REGEXP_KEYDOWN
=
new
RegExp
(
`
${
ARROW_UP_KEYCODE
}
|
${
ARROW_DOWN_KEYCODE
}
|
${
ESCAPE_KEYCODE
}
`
)
const
CLASS_NAME_DISABLED
=
'
disabled
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_DROPUP
=
'
dropup
'
const
CLASS_NAME_DROPRIGHT
=
'
dropright
'
const
CLASS_NAME_DROPLEFT
=
'
dropleft
'
const
CLASS_NAME_MENURIGHT
=
'
dropdown-menu-right
'
const
CLASS_NAME_POSITION_STATIC
=
'
position-static
'
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
...
@@ -38,14 +44,6 @@ const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`
...
@@ -38,14 +44,6 @@ const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`
const
EVENT_KEYDOWN_DATA_API
=
`keydown
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_KEYDOWN_DATA_API
=
`keydown
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_KEYUP_DATA_API
=
`keyup
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_KEYUP_DATA_API
=
`keyup
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_DISABLED
=
'
disabled
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_DROPUP
=
'
dropup
'
const
CLASS_NAME_DROPRIGHT
=
'
dropright
'
const
CLASS_NAME_DROPLEFT
=
'
dropleft
'
const
CLASS_NAME_MENURIGHT
=
'
dropdown-menu-right
'
const
CLASS_NAME_POSITION_STATIC
=
'
position-static
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="dropdown"]
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="dropdown"]
'
const
SELECTOR_FORM_CHILD
=
'
.dropdown form
'
const
SELECTOR_FORM_CHILD
=
'
.dropdown form
'
const
SELECTOR_MENU
=
'
.dropdown-menu
'
const
SELECTOR_MENU
=
'
.dropdown-menu
'
...
@@ -78,9 +76,7 @@ const DefaultType = {
...
@@ -78,9 +76,7 @@ const DefaultType = {
}
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Dropdown
{
class
Dropdown
{
...
@@ -95,7 +91,6 @@ class Dropdown {
...
@@ -95,7 +91,6 @@ class Dropdown {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -109,7 +104,6 @@ class Dropdown {
...
@@ -109,7 +104,6 @@ class Dropdown {
}
}
// Public
// Public
toggle
()
{
toggle
()
{
if
(
this
.
_element
.
disabled
||
$
(
this
.
_element
).
hasClass
(
CLASS_NAME_DISABLED
))
{
if
(
this
.
_element
.
disabled
||
$
(
this
.
_element
).
hasClass
(
CLASS_NAME_DISABLED
))
{
return
return
...
@@ -145,10 +139,7 @@ class Dropdown {
...
@@ -145,10 +139,7 @@ class Dropdown {
// Totally disable Popper for Dropdowns in Navbar
// Totally disable Popper for Dropdowns in Navbar
if
(
!
this
.
_inNavbar
&&
usePopper
)
{
if
(
!
this
.
_inNavbar
&&
usePopper
)
{
/**
// Check for Popper dependency
* Check for Popper dependency
* Popper - https://popper.js.org
*/
if
(
typeof
Popper
===
'
undefined
'
)
{
if
(
typeof
Popper
===
'
undefined
'
)
{
throw
new
TypeError
(
'
Bootstrap
\'
s dropdowns require Popper (https://popper.js.org)
'
)
throw
new
TypeError
(
'
Bootstrap
\'
s dropdowns require Popper (https://popper.js.org)
'
)
}
}
...
@@ -240,7 +231,6 @@ class Dropdown {
...
@@ -240,7 +231,6 @@ class Dropdown {
}
}
// Private
// Private
_addEventListeners
()
{
_addEventListeners
()
{
$
(
this
.
_element
).
on
(
EVENT_CLICK
,
event
=>
{
$
(
this
.
_element
).
on
(
EVENT_CLICK
,
event
=>
{
event
.
preventDefault
()
event
.
preventDefault
()
...
@@ -348,7 +338,6 @@ class Dropdown {
...
@@ -348,7 +338,6 @@ class Dropdown {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
let
data
=
$
(
this
).
data
(
DATA_KEY
)
let
data
=
$
(
this
).
data
(
DATA_KEY
)
...
@@ -504,9 +493,7 @@ class Dropdown {
...
@@ -504,9 +493,7 @@ class Dropdown {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
)
$
(
document
)
...
@@ -523,9 +510,7 @@ $(document)
...
@@ -523,9 +510,7 @@ $(document)
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Dropdown
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Dropdown
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/modal.js
+
23
-
35
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
modal
'
const
NAME
=
'
modal
'
...
@@ -22,19 +20,13 @@ const DATA_API_KEY = '.data-api'
...
@@ -22,19 +20,13 @@ const DATA_API_KEY = '.data-api'
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
ESCAPE_KEYCODE
=
27
// KeyboardEvent.which value for Escape (Esc) key
const
ESCAPE_KEYCODE
=
27
// KeyboardEvent.which value for Escape (Esc) key
const
Default
=
{
const
CLASS_NAME_SCROLLABLE
=
'
modal-dialog-scrollable
'
backdrop
:
true
,
const
CLASS_NAME_SCROLLBAR_MEASURER
=
'
modal-scrollbar-measure
'
keyboard
:
true
,
const
CLASS_NAME_BACKDROP
=
'
modal-backdrop
'
focus
:
true
,
const
CLASS_NAME_OPEN
=
'
modal-open
'
show
:
true
const
CLASS_NAME_FADE
=
'
fade
'
}
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_STATIC
=
'
modal-static
'
const
DefaultType
=
{
backdrop
:
'
(boolean|string)
'
,
keyboard
:
'
boolean
'
,
focus
:
'
boolean
'
,
show
:
'
boolean
'
}
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDE_PREVENTED
=
`hidePrevented
${
EVENT_KEY
}
`
const
EVENT_HIDE_PREVENTED
=
`hidePrevented
${
EVENT_KEY
}
`
...
@@ -49,14 +41,6 @@ const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`
...
@@ -49,14 +41,6 @@ const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`
const
EVENT_MOUSEDOWN_DISMISS
=
`mousedown.dismiss
${
EVENT_KEY
}
`
const
EVENT_MOUSEDOWN_DISMISS
=
`mousedown.dismiss
${
EVENT_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_SCROLLABLE
=
'
modal-dialog-scrollable
'
const
CLASS_NAME_SCROLLBAR_MEASURER
=
'
modal-scrollbar-measure
'
const
CLASS_NAME_BACKDROP
=
'
modal-backdrop
'
const
CLASS_NAME_OPEN
=
'
modal-open
'
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_STATIC
=
'
modal-static
'
const
SELECTOR_DIALOG
=
'
.modal-dialog
'
const
SELECTOR_DIALOG
=
'
.modal-dialog
'
const
SELECTOR_MODAL_BODY
=
'
.modal-body
'
const
SELECTOR_MODAL_BODY
=
'
.modal-body
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="modal"]
'
const
SELECTOR_DATA_TOGGLE
=
'
[data-toggle="modal"]
'
...
@@ -64,10 +48,22 @@ const SELECTOR_DATA_DISMISS = '[data-dismiss="modal"]'
...
@@ -64,10 +48,22 @@ const SELECTOR_DATA_DISMISS = '[data-dismiss="modal"]'
const
SELECTOR_FIXED_CONTENT
=
'
.fixed-top, .fixed-bottom, .is-fixed, .sticky-top
'
const
SELECTOR_FIXED_CONTENT
=
'
.fixed-top, .fixed-bottom, .is-fixed, .sticky-top
'
const
SELECTOR_STICKY_CONTENT
=
'
.sticky-top
'
const
SELECTOR_STICKY_CONTENT
=
'
.sticky-top
'
const
Default
=
{
backdrop
:
true
,
keyboard
:
true
,
focus
:
true
,
show
:
true
}
const
DefaultType
=
{
backdrop
:
'
(boolean|string)
'
,
keyboard
:
'
boolean
'
,
focus
:
'
boolean
'
,
show
:
'
boolean
'
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Modal
{
class
Modal
{
...
@@ -84,7 +80,6 @@ class Modal {
...
@@ -84,7 +80,6 @@ class Modal {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -94,7 +89,6 @@ class Modal {
...
@@ -94,7 +89,6 @@ class Modal {
}
}
// Public
// Public
toggle
(
relatedTarget
)
{
toggle
(
relatedTarget
)
{
return
this
.
_isShown
?
this
.
hide
()
:
this
.
show
(
relatedTarget
)
return
this
.
_isShown
?
this
.
hide
()
:
this
.
show
(
relatedTarget
)
}
}
...
@@ -219,7 +213,6 @@ class Modal {
...
@@ -219,7 +213,6 @@ class Modal {
}
}
// Private
// Private
_getConfig
(
config
)
{
_getConfig
(
config
)
{
config
=
{
config
=
{
...
Default
,
...
Default
,
...
@@ -545,7 +538,6 @@ class Modal {
...
@@ -545,7 +538,6 @@ class Modal {
}
}
// Static
// Static
static
_jQueryInterface
(
config
,
relatedTarget
)
{
static
_jQueryInterface
(
config
,
relatedTarget
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
let
data
=
$
(
this
).
data
(
DATA_KEY
)
let
data
=
$
(
this
).
data
(
DATA_KEY
)
...
@@ -574,9 +566,7 @@ class Modal {
...
@@ -574,9 +566,7 @@ class Modal {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
).
on
(
EVENT_CLICK_DATA_API
,
SELECTOR_DATA_TOGGLE
,
function
(
event
)
{
$
(
document
).
on
(
EVENT_CLICK_DATA_API
,
SELECTOR_DATA_TOGGLE
,
function
(
event
)
{
...
@@ -614,9 +604,7 @@ $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
...
@@ -614,9 +604,7 @@ $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Modal
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Modal
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/popover.js
+
7
-
17
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Tooltip
from
'
./tooltip
'
import
Tooltip
from
'
./tooltip
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
popover
'
const
NAME
=
'
popover
'
...
@@ -22,6 +20,12 @@ const JQUERY_NO_CONFLICT = $.fn[NAME]
...
@@ -22,6 +20,12 @@ const JQUERY_NO_CONFLICT = $.fn[NAME]
const
CLASS_PREFIX
=
'
bs-popover
'
const
CLASS_PREFIX
=
'
bs-popover
'
const
BSCLS_PREFIX_REGEX
=
new
RegExp
(
`(^|\\s)
${
CLASS_PREFIX
}
\\S+`
,
'
g
'
)
const
BSCLS_PREFIX_REGEX
=
new
RegExp
(
`(^|\\s)
${
CLASS_PREFIX
}
\\S+`
,
'
g
'
)
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
const
SELECTOR_TITLE
=
'
.popover-header
'
const
SELECTOR_CONTENT
=
'
.popover-body
'
const
Default
=
{
const
Default
=
{
...
Tooltip
.
Default
,
...
Tooltip
.
Default
,
placement
:
'
right
'
,
placement
:
'
right
'
,
...
@@ -38,12 +42,6 @@ const DefaultType = {
...
@@ -38,12 +42,6 @@ const DefaultType = {
content
:
'
(string|element|function)
'
content
:
'
(string|element|function)
'
}
}
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
const
SELECTOR_TITLE
=
'
.popover-header
'
const
SELECTOR_CONTENT
=
'
.popover-body
'
const
Event
=
{
const
Event
=
{
HIDE
:
`hide
${
EVENT_KEY
}
`
,
HIDE
:
`hide
${
EVENT_KEY
}
`
,
HIDDEN
:
`hidden
${
EVENT_KEY
}
`
,
HIDDEN
:
`hidden
${
EVENT_KEY
}
`
,
...
@@ -58,14 +56,11 @@ const Event = {
...
@@ -58,14 +56,11 @@ const Event = {
}
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Popover
extends
Tooltip
{
class
Popover
extends
Tooltip
{
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -95,7 +90,6 @@ class Popover extends Tooltip {
...
@@ -95,7 +90,6 @@ class Popover extends Tooltip {
}
}
// Overrides
// Overrides
isWithContent
()
{
isWithContent
()
{
return
this
.
getTitle
()
||
this
.
_getContent
()
return
this
.
getTitle
()
||
this
.
_getContent
()
}
}
...
@@ -125,7 +119,6 @@ class Popover extends Tooltip {
...
@@ -125,7 +119,6 @@ class Popover extends Tooltip {
}
}
// Private
// Private
_getContent
()
{
_getContent
()
{
return
this
.
element
.
getAttribute
(
'
data-content
'
)
||
return
this
.
element
.
getAttribute
(
'
data-content
'
)
||
this
.
config
.
content
this
.
config
.
content
...
@@ -140,7 +133,6 @@ class Popover extends Tooltip {
...
@@ -140,7 +133,6 @@ class Popover extends Tooltip {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
let
data
=
$
(
this
).
data
(
DATA_KEY
)
let
data
=
$
(
this
).
data
(
DATA_KEY
)
...
@@ -167,9 +159,7 @@ class Popover extends Tooltip {
...
@@ -167,9 +159,7 @@ class Popover extends Tooltip {
}
}
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Popover
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Popover
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/scrollspy.js
+
17
-
29
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
scrollspy
'
const
NAME
=
'
scrollspy
'
...
@@ -21,24 +19,15 @@ const EVENT_KEY = `.${DATA_KEY}`
...
@@ -21,24 +19,15 @@ const EVENT_KEY = `.${DATA_KEY}`
const
DATA_API_KEY
=
'
.data-api
'
const
DATA_API_KEY
=
'
.data-api
'
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
Default
=
{
const
CLASS_NAME_DROPDOWN_ITEM
=
'
dropdown-item
'
offset
:
10
,
const
CLASS_NAME_ACTIVE
=
'
active
'
method
:
'
auto
'
,
target
:
''
}
const
DefaultType
=
{
offset
:
'
number
'
,
method
:
'
string
'
,
target
:
'
(string|element)
'
}
const
EVENT_ACTIVATE
=
`activate
${
EVENT_KEY
}
`
const
EVENT_ACTIVATE
=
`activate
${
EVENT_KEY
}
`
const
EVENT_SCROLL
=
`scroll
${
EVENT_KEY
}
`
const
EVENT_SCROLL
=
`scroll
${
EVENT_KEY
}
`
const
EVENT_LOAD_DATA_API
=
`load
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
EVENT_LOAD_DATA_API
=
`load
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_DROPDOWN_ITEM
=
'
dropdown-item
'
const
METHOD_OFFSET
=
'
offset
'
const
CLASS_NAME_ACTIVE
=
'
active
'
const
METHOD_POSITION
=
'
position
'
const
SELECTOR_DATA_SPY
=
'
[data-spy="scroll"]
'
const
SELECTOR_DATA_SPY
=
'
[data-spy="scroll"]
'
const
SELECTOR_NAV_LIST_GROUP
=
'
.nav, .list-group
'
const
SELECTOR_NAV_LIST_GROUP
=
'
.nav, .list-group
'
...
@@ -49,13 +38,20 @@ const SELECTOR_DROPDOWN = '.dropdown'
...
@@ -49,13 +38,20 @@ const SELECTOR_DROPDOWN = '.dropdown'
const
SELECTOR_DROPDOWN_ITEMS
=
'
.dropdown-item
'
const
SELECTOR_DROPDOWN_ITEMS
=
'
.dropdown-item
'
const
SELECTOR_DROPDOWN_TOGGLE
=
'
.dropdown-toggle
'
const
SELECTOR_DROPDOWN_TOGGLE
=
'
.dropdown-toggle
'
const
METHOD_OFFSET
=
'
offset
'
const
Default
=
{
const
METHOD_POSITION
=
'
position
'
offset
:
10
,
method
:
'
auto
'
,
target
:
''
}
const
DefaultType
=
{
offset
:
'
number
'
,
method
:
'
string
'
,
target
:
'
(string|element)
'
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
ScrollSpy
{
class
ScrollSpy
{
...
@@ -78,7 +74,6 @@ class ScrollSpy {
...
@@ -78,7 +74,6 @@ class ScrollSpy {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -88,7 +83,6 @@ class ScrollSpy {
...
@@ -88,7 +83,6 @@ class ScrollSpy {
}
}
// Public
// Public
refresh
()
{
refresh
()
{
const
autoMethod
=
this
.
_scrollElement
===
this
.
_scrollElement
.
window
?
const
autoMethod
=
this
.
_scrollElement
===
this
.
_scrollElement
.
window
?
METHOD_OFFSET
:
METHOD_POSITION
METHOD_OFFSET
:
METHOD_POSITION
...
@@ -151,7 +145,6 @@ class ScrollSpy {
...
@@ -151,7 +145,6 @@ class ScrollSpy {
}
}
// Private
// Private
_getConfig
(
config
)
{
_getConfig
(
config
)
{
config
=
{
config
=
{
...
Default
,
...
Default
,
...
@@ -270,7 +263,6 @@ class ScrollSpy {
...
@@ -270,7 +263,6 @@ class ScrollSpy {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
let
data
=
$
(
this
).
data
(
DATA_KEY
)
let
data
=
$
(
this
).
data
(
DATA_KEY
)
...
@@ -293,9 +285,7 @@ class ScrollSpy {
...
@@ -293,9 +285,7 @@ class ScrollSpy {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
window
).
on
(
EVENT_LOAD_DATA_API
,
()
=>
{
$
(
window
).
on
(
EVENT_LOAD_DATA_API
,
()
=>
{
...
@@ -309,9 +299,7 @@ $(window).on(EVENT_LOAD_DATA_API, () => {
...
@@ -309,9 +299,7 @@ $(window).on(EVENT_LOAD_DATA_API, () => {
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
ScrollSpy
.
_jQueryInterface
$
.
fn
[
NAME
]
=
ScrollSpy
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/tab.js
+
8
-
20
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
tab
'
const
NAME
=
'
tab
'
...
@@ -21,18 +19,18 @@ const EVENT_KEY = `.${DATA_KEY}`
...
@@ -21,18 +19,18 @@ const EVENT_KEY = `.${DATA_KEY}`
const
DATA_API_KEY
=
'
.data-api
'
const
DATA_API_KEY
=
'
.data-api
'
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOWN
=
`shown
${
EVENT_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
CLASS_NAME_DROPDOWN_MENU
=
'
dropdown-menu
'
const
CLASS_NAME_DROPDOWN_MENU
=
'
dropdown-menu
'
const
CLASS_NAME_ACTIVE
=
'
active
'
const
CLASS_NAME_ACTIVE
=
'
active
'
const
CLASS_NAME_DISABLED
=
'
disabled
'
const
CLASS_NAME_DISABLED
=
'
disabled
'
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_SHOW
=
'
show
'
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOWN
=
`shown
${
EVENT_KEY
}
`
const
EVENT_CLICK_DATA_API
=
`click
${
EVENT_KEY
}${
DATA_API_KEY
}
`
const
SELECTOR_DROPDOWN
=
'
.dropdown
'
const
SELECTOR_DROPDOWN
=
'
.dropdown
'
const
SELECTOR_NAV_LIST_GROUP
=
'
.nav, .list-group
'
const
SELECTOR_NAV_LIST_GROUP
=
'
.nav, .list-group
'
const
SELECTOR_ACTIVE
=
'
.active
'
const
SELECTOR_ACTIVE
=
'
.active
'
...
@@ -42,9 +40,7 @@ const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'
...
@@ -42,9 +40,7 @@ const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'
const
SELECTOR_DROPDOWN_ACTIVE_CHILD
=
'
> .dropdown-menu .active
'
const
SELECTOR_DROPDOWN_ACTIVE_CHILD
=
'
> .dropdown-menu .active
'
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Tab
{
class
Tab
{
...
@@ -53,13 +49,11 @@ class Tab {
...
@@ -53,13 +49,11 @@ class Tab {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
// Public
// Public
show
()
{
show
()
{
if
(
this
.
_element
.
parentNode
&&
if
(
this
.
_element
.
parentNode
&&
this
.
_element
.
parentNode
.
nodeType
===
Node
.
ELEMENT_NODE
&&
this
.
_element
.
parentNode
.
nodeType
===
Node
.
ELEMENT_NODE
&&
...
@@ -133,7 +127,6 @@ class Tab {
...
@@ -133,7 +127,6 @@ class Tab {
}
}
// Private
// Private
_activate
(
element
,
container
,
callback
)
{
_activate
(
element
,
container
,
callback
)
{
const
activeElements
=
container
&&
(
container
.
nodeName
===
'
UL
'
||
container
.
nodeName
===
'
OL
'
)
?
const
activeElements
=
container
&&
(
container
.
nodeName
===
'
UL
'
||
container
.
nodeName
===
'
OL
'
)
?
$
(
container
).
find
(
SELECTOR_ACTIVE_UL
)
:
$
(
container
).
find
(
SELECTOR_ACTIVE_UL
)
:
...
@@ -210,7 +203,6 @@ class Tab {
...
@@ -210,7 +203,6 @@ class Tab {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
const
$this
=
$
(
this
)
const
$this
=
$
(
this
)
...
@@ -233,9 +225,7 @@ class Tab {
...
@@ -233,9 +225,7 @@ class Tab {
}
}
/**
/**
* ------------------------------------------------------------------------
* Data API implementation
* Data Api implementation
* ------------------------------------------------------------------------
*/
*/
$
(
document
)
$
(
document
)
...
@@ -245,9 +235,7 @@ $(document)
...
@@ -245,9 +235,7 @@ $(document)
})
})
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Tab
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Tab
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/toast.js
+
12
-
22
View file @
fe73da98
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
...
@@ -9,9 +9,7 @@ import $ from 'jquery'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
toast
'
const
NAME
=
'
toast
'
...
@@ -20,22 +18,18 @@ const DATA_KEY = 'bs.toast'
...
@@ -20,22 +18,18 @@ const DATA_KEY = 'bs.toast'
const
EVENT_KEY
=
`.
${
DATA_KEY
}
`
const
EVENT_KEY
=
`.
${
DATA_KEY
}
`
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
JQUERY_NO_CONFLICT
=
$
.
fn
[
NAME
]
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_HIDE
=
'
hide
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_SHOWING
=
'
showing
'
const
EVENT_CLICK_DISMISS
=
`click.dismiss
${
EVENT_KEY
}
`
const
EVENT_CLICK_DISMISS
=
`click.dismiss
${
EVENT_KEY
}
`
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDE
=
`hide
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_HIDDEN
=
`hidden
${
EVENT_KEY
}
`
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOW
=
`show
${
EVENT_KEY
}
`
const
EVENT_SHOWN
=
`shown
${
EVENT_KEY
}
`
const
EVENT_SHOWN
=
`shown
${
EVENT_KEY
}
`
const
CLASS_NAME_FADE
=
'
fade
'
const
SELECTOR_DATA_DISMISS
=
'
[data-dismiss="toast"]
'
const
CLASS_NAME_HIDE
=
'
hide
'
const
CLASS_NAME_SHOW
=
'
show
'
const
CLASS_NAME_SHOWING
=
'
showing
'
const
DefaultType
=
{
animation
:
'
boolean
'
,
autohide
:
'
boolean
'
,
delay
:
'
number
'
}
const
Default
=
{
const
Default
=
{
animation
:
true
,
animation
:
true
,
...
@@ -43,12 +37,14 @@ const Default = {
...
@@ -43,12 +37,14 @@ const Default = {
delay
:
500
delay
:
500
}
}
const
SELECTOR_DATA_DISMISS
=
'
[data-dismiss="toast"]
'
const
DefaultType
=
{
animation
:
'
boolean
'
,
autohide
:
'
boolean
'
,
delay
:
'
number
'
}
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Toast
{
class
Toast
{
...
@@ -60,7 +56,6 @@ class Toast {
...
@@ -60,7 +56,6 @@ class Toast {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -74,7 +69,6 @@ class Toast {
...
@@ -74,7 +69,6 @@ class Toast {
}
}
// Public
// Public
show
()
{
show
()
{
const
showEvent
=
$
.
Event
(
EVENT_SHOW
)
const
showEvent
=
$
.
Event
(
EVENT_SHOW
)
...
@@ -146,7 +140,6 @@ class Toast {
...
@@ -146,7 +140,6 @@ class Toast {
}
}
// Private
// Private
_getConfig
(
config
)
{
_getConfig
(
config
)
{
config
=
{
config
=
{
...
Default
,
...
Default
,
...
@@ -191,7 +184,6 @@ class Toast {
...
@@ -191,7 +184,6 @@ class Toast {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
const
$element
=
$
(
this
)
const
$element
=
$
(
this
)
...
@@ -215,9 +207,7 @@ class Toast {
...
@@ -215,9 +207,7 @@ class Toast {
}
}
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Toast
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Toast
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/tooltip.js
+
35
-
49
View file @
fe73da98
...
@@ -5,18 +5,13 @@
...
@@ -5,18 +5,13 @@
* --------------------------------------------------------------------------
* --------------------------------------------------------------------------
*/
*/
import
{
import
{
DefaultWhitelist
,
sanitizeHtml
}
from
'
./tools/sanitizer
'
DefaultWhitelist
,
sanitizeHtml
}
from
'
./tools/sanitizer
'
import
$
from
'
jquery
'
import
$
from
'
jquery
'
import
Popper
from
'
popper.js
'
import
Popper
from
'
popper.js
'
import
Util
from
'
./util
'
import
Util
from
'
./util
'
/**
/**
* ------------------------------------------------------------------------
* Constants
* Constants
* ------------------------------------------------------------------------
*/
*/
const
NAME
=
'
tooltip
'
const
NAME
=
'
tooltip
'
...
@@ -28,25 +23,19 @@ const CLASS_PREFIX = 'bs-tooltip'
...
@@ -28,25 +23,19 @@ const CLASS_PREFIX = 'bs-tooltip'
const
BSCLS_PREFIX_REGEX
=
new
RegExp
(
`(^|\\s)
${
CLASS_PREFIX
}
\\S+`
,
'
g
'
)
const
BSCLS_PREFIX_REGEX
=
new
RegExp
(
`(^|\\s)
${
CLASS_PREFIX
}
\\S+`
,
'
g
'
)
const
DISALLOWED_ATTRIBUTES
=
[
'
sanitize
'
,
'
whiteList
'
,
'
sanitizeFn
'
]
const
DISALLOWED_ATTRIBUTES
=
[
'
sanitize
'
,
'
whiteList
'
,
'
sanitizeFn
'
]
const
DefaultType
=
{
const
CLASS_NAME_FADE
=
'
fade
'
animation
:
'
boolean
'
,
const
CLASS_NAME_SHOW
=
'
show
'
template
:
'
string
'
,
title
:
'
(string|element|function)
'
,
const
HOVER_STATE_SHOW
=
'
show
'
trigger
:
'
string
'
,
const
HOVER_STATE_OUT
=
'
out
'
delay
:
'
(number|object)
'
,
html
:
'
boolean
'
,
const
SELECTOR_TOOLTIP_INNER
=
'
.tooltip-inner
'
selector
:
'
(string|boolean)
'
,
const
SELECTOR_ARROW
=
'
.arrow
'
placement
:
'
(string|function)
'
,
offset
:
'
(number|string|function)
'
,
const
TRIGGER_HOVER
=
'
hover
'
container
:
'
(string|element|boolean)
'
,
const
TRIGGER_FOCUS
=
'
focus
'
fallbackPlacement
:
'
(string|array)
'
,
const
TRIGGER_CLICK
=
'
click
'
boundary
:
'
(string|element)
'
,
const
TRIGGER_MANUAL
=
'
manual
'
customClass
:
'
(string|function)
'
,
sanitize
:
'
boolean
'
,
sanitizeFn
:
'
(null|function)
'
,
whiteList
:
'
object
'
,
popperConfig
:
'
(null|object)
'
}
const
AttachmentMap
=
{
const
AttachmentMap
=
{
AUTO
:
'
auto
'
,
AUTO
:
'
auto
'
,
...
@@ -78,8 +67,25 @@ const Default = {
...
@@ -78,8 +67,25 @@ const Default = {
popperConfig
:
null
popperConfig
:
null
}
}
const
HOVER_STATE_SHOW
=
'
show
'
const
DefaultType
=
{
const
HOVER_STATE_OUT
=
'
out
'
animation
:
'
boolean
'
,
template
:
'
string
'
,
title
:
'
(string|element|function)
'
,
trigger
:
'
string
'
,
delay
:
'
(number|object)
'
,
html
:
'
boolean
'
,
selector
:
'
(string|boolean)
'
,
placement
:
'
(string|function)
'
,
offset
:
'
(number|string|function)
'
,
container
:
'
(string|element|boolean)
'
,
fallbackPlacement
:
'
(string|array)
'
,
boundary
:
'
(string|element)
'
,
customClass
:
'
(string|function)
'
,
sanitize
:
'
boolean
'
,
sanitizeFn
:
'
(null|function)
'
,
whiteList
:
'
object
'
,
popperConfig
:
'
(null|object)
'
}
const
Event
=
{
const
Event
=
{
HIDE
:
`hide
${
EVENT_KEY
}
`
,
HIDE
:
`hide
${
EVENT_KEY
}
`
,
...
@@ -94,21 +100,8 @@ const Event = {
...
@@ -94,21 +100,8 @@ const Event = {
MOUSELEAVE
:
`mouseleave
${
EVENT_KEY
}
`
MOUSELEAVE
:
`mouseleave
${
EVENT_KEY
}
`
}
}
const
CLASS_NAME_FADE
=
'
fade
'
const
CLASS_NAME_SHOW
=
'
show
'
const
SELECTOR_TOOLTIP_INNER
=
'
.tooltip-inner
'
const
SELECTOR_ARROW
=
'
.arrow
'
const
TRIGGER_HOVER
=
'
hover
'
const
TRIGGER_FOCUS
=
'
focus
'
const
TRIGGER_CLICK
=
'
click
'
const
TRIGGER_MANUAL
=
'
manual
'
/**
/**
* ------------------------------------------------------------------------
* Class definition
* Class Definition
* ------------------------------------------------------------------------
*/
*/
class
Tooltip
{
class
Tooltip
{
...
@@ -117,7 +110,7 @@ class Tooltip {
...
@@ -117,7 +110,7 @@ class Tooltip {
throw
new
TypeError
(
'
Bootstrap
\'
s tooltips require Popper (https://popper.js.org)
'
)
throw
new
TypeError
(
'
Bootstrap
\'
s tooltips require Popper (https://popper.js.org)
'
)
}
}
//
p
rivate
//
P
rivate
this
.
_isEnabled
=
true
this
.
_isEnabled
=
true
this
.
_timeout
=
0
this
.
_timeout
=
0
this
.
_hoverState
=
''
this
.
_hoverState
=
''
...
@@ -133,7 +126,6 @@ class Tooltip {
...
@@ -133,7 +126,6 @@ class Tooltip {
}
}
// Getters
// Getters
static
get
VERSION
()
{
static
get
VERSION
()
{
return
VERSION
return
VERSION
}
}
...
@@ -163,7 +155,6 @@ class Tooltip {
...
@@ -163,7 +155,6 @@ class Tooltip {
}
}
// Public
// Public
enable
()
{
enable
()
{
this
.
_isEnabled
=
true
this
.
_isEnabled
=
true
}
}
...
@@ -381,7 +372,6 @@ class Tooltip {
...
@@ -381,7 +372,6 @@ class Tooltip {
}
}
// Protected
// Protected
isWithContent
()
{
isWithContent
()
{
return
Boolean
(
this
.
getTitle
())
return
Boolean
(
this
.
getTitle
())
}
}
...
@@ -439,7 +429,6 @@ class Tooltip {
...
@@ -439,7 +429,6 @@ class Tooltip {
}
}
// Private
// Private
_getPopperConfig
(
attachment
)
{
_getPopperConfig
(
attachment
)
{
const
defaultBsConfig
=
{
const
defaultBsConfig
=
{
placement
:
attachment
,
placement
:
attachment
,
...
@@ -735,7 +724,6 @@ class Tooltip {
...
@@ -735,7 +724,6 @@ class Tooltip {
}
}
// Static
// Static
static
_jQueryInterface
(
config
)
{
static
_jQueryInterface
(
config
)
{
return
this
.
each
(
function
()
{
return
this
.
each
(
function
()
{
const
$element
=
$
(
this
)
const
$element
=
$
(
this
)
...
@@ -763,9 +751,7 @@ class Tooltip {
...
@@ -763,9 +751,7 @@ class Tooltip {
}
}
/**
/**
* ------------------------------------------------------------------------
* jQuery
* jQuery
* ------------------------------------------------------------------------
*/
*/
$
.
fn
[
NAME
]
=
Tooltip
.
_jQueryInterface
$
.
fn
[
NAME
]
=
Tooltip
.
_jQueryInterface
...
...
This diff is collapsed.
Click to expand it.
js/src/util.js
+
1
-
5
View file @
fe73da98
...
@@ -8,9 +8,7 @@
...
@@ -8,9 +8,7 @@
import
$
from
'
jquery
'
import
$
from
'
jquery
'
/**
/**
* ------------------------------------------------------------------------
* Private TransitionEnd Helpers
* Private TransitionEnd Helpers
* ------------------------------------------------------------------------
*/
*/
const
TRANSITION_END
=
'
transitionend
'
const
TRANSITION_END
=
'
transitionend
'
...
@@ -62,9 +60,7 @@ function setTransitionEndSupport() {
...
@@ -62,9 +60,7 @@ function setTransitionEndSupport() {
}
}
/**
/**
* --------------------------------------------------------------------------
* Public Util API
* Public Util Api
* --------------------------------------------------------------------------
*/
*/
const
Util
=
{
const
Util
=
{
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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
Menu
Explore
Projects
Groups
Snippets