bootstrap 4.0.0.beta3 → 4.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.travis.yml +15 -1
- data/CHANGELOG.md +2 -2
- data/README.md +2 -2
- data/Rakefile +4 -2
- data/assets/javascripts/bootstrap/alert.js +79 -68
- data/assets/javascripts/bootstrap/button.js +140 -78
- data/assets/javascripts/bootstrap/carousel.js +294 -158
- data/assets/javascripts/bootstrap/collapse.js +157 -133
- data/assets/javascripts/bootstrap/dropdown.js +257 -167
- data/assets/javascripts/bootstrap/modal.js +285 -204
- data/assets/javascripts/bootstrap/popover.js +101 -60
- data/assets/javascripts/bootstrap/scrollspy.js +127 -106
- data/assets/javascripts/bootstrap/tab.js +113 -101
- data/assets/javascripts/bootstrap/toast.js +267 -0
- data/assets/javascripts/bootstrap/tooltip.js +406 -188
- data/assets/javascripts/bootstrap/util.js +106 -55
- data/assets/javascripts/bootstrap-sprockets.js +1 -0
- data/assets/javascripts/bootstrap.js +1946 -1482
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/stylesheets/_bootstrap-grid.scss +7 -12
- data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
- data/assets/stylesheets/_bootstrap.scss +6 -4
- data/assets/stylesheets/bootstrap/_alert.scss +3 -2
- data/assets/stylesheets/bootstrap/_badge.scss +8 -1
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +10 -6
- data/assets/stylesheets/bootstrap/_button-group.scss +17 -20
- data/assets/stylesheets/bootstrap/_buttons.scss +23 -28
- data/assets/stylesheets/bootstrap/_card.scss +77 -61
- data/assets/stylesheets/bootstrap/_carousel.scss +72 -63
- data/assets/stylesheets/bootstrap/_close.scss +15 -9
- data/assets/stylesheets/bootstrap/_code.scss +6 -14
- data/assets/stylesheets/bootstrap/_custom-forms.scss +287 -43
- data/assets/stylesheets/bootstrap/_dropdown.scss +70 -9
- data/assets/stylesheets/bootstrap/_forms.scss +56 -42
- data/assets/stylesheets/bootstrap/_functions.scss +117 -13
- data/assets/stylesheets/bootstrap/_grid.scss +32 -11
- data/assets/stylesheets/bootstrap/_images.scss +4 -4
- data/assets/stylesheets/bootstrap/_input-group.scss +80 -25
- data/assets/stylesheets/bootstrap/_jumbotron.scss +2 -1
- data/assets/stylesheets/bootstrap/_list-group.scss +63 -24
- data/assets/stylesheets/bootstrap/_mixins.scss +9 -4
- data/assets/stylesheets/bootstrap/_modal.scss +96 -24
- data/assets/stylesheets/bootstrap/_nav.scss +14 -7
- data/assets/stylesheets/bootstrap/_navbar.scss +66 -45
- data/assets/stylesheets/bootstrap/_pagination.scss +10 -8
- data/assets/stylesheets/bootstrap/_popover.scss +56 -69
- data/assets/stylesheets/bootstrap/_print.scss +41 -19
- data/assets/stylesheets/bootstrap/_progress.scss +20 -6
- data/assets/stylesheets/bootstrap/_reboot.scss +88 -109
- data/assets/stylesheets/bootstrap/_spinners.scss +65 -0
- data/assets/stylesheets/bootstrap/_tables.scss +19 -14
- data/assets/stylesheets/bootstrap/_toasts.scss +46 -0
- data/assets/stylesheets/bootstrap/_tooltip.scss +6 -6
- data/assets/stylesheets/bootstrap/_transitions.scss +10 -20
- data/assets/stylesheets/bootstrap/_type.scss +19 -19
- data/assets/stylesheets/bootstrap/_utilities.scss +4 -0
- data/assets/stylesheets/bootstrap/_variables.scss +492 -215
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +5 -3
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +8 -3
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +51 -10
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +16 -1
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +11 -9
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +35 -26
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +13 -16
- data/assets/stylesheets/bootstrap/mixins/_deprecate.scss +10 -0
- data/assets/stylesheets/bootstrap/mixins/_float.scss +6 -3
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +102 -40
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +7 -7
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +36 -25
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +34 -17
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +27 -51
- data/assets/stylesheets/bootstrap/mixins/_image.scss +4 -4
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +10 -13
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +3 -2
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +3 -3
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +5 -6
- data/assets/stylesheets/bootstrap/mixins/_size.scss +1 -0
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +11 -2
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +7 -4
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +3 -1
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +20 -3
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +1 -0
- data/assets/stylesheets/bootstrap/utilities/_background.scss +2 -2
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +23 -2
- data/assets/stylesheets/bootstrap/utilities/_display.scss +6 -36
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +7 -20
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_float.scss +5 -3
- data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_overflow.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -4
- data/assets/stylesheets/bootstrap/utilities/_shadows.scss +6 -0
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +8 -0
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +23 -1
- data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +19 -0
- data/assets/stylesheets/bootstrap/utilities/_text.scss +28 -8
- data/assets/stylesheets/bootstrap/utilities/_visibility.scss +4 -2
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +228 -0
- data/bootstrap.gemspec +7 -4
- data/lib/bootstrap/engine.rb +3 -0
- data/lib/bootstrap/version.rb +4 -2
- data/lib/bootstrap.rb +10 -7
- data/tasks/updater/js.rb +18 -6
- data/tasks/updater/network.rb +8 -2
- data/test/dummy_rails/app/assets/config/manifest.js +3 -0
- data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- data/test/support/dummy_rails_integration.rb +3 -1
- data/test/test_helper.rb +21 -15
- metadata +29 -16
- data/assets/stylesheets/bootstrap/mixins/_navbar-align.scss +0 -10
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 26f3252ccbfe53a40fd0cdf9d0d9f3d717dcf854d19a9535c903cd072796313d
|
|
4
|
+
data.tar.gz: bce01fe328a2cd98599d10c0ee56a356754159bc49ecf99593652ae227f29210
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c303b1722240f8db43117ae7b11680738e3f5dc1a0f41d65e3e0ddda579ec10d13f80e210e8e15819e56230844962325fd470b3fc0add59ee44441f0b15f7681
|
|
7
|
+
data.tar.gz: 3e74aa08bcbdf56c5ee25eda907c2b4a57a67abc2bef1ce02485e4aab3c3067e7119f847fb3bb6d3c7278680c0ce46b7950d614e899ccbb8e701b9f06fccfafc
|
data/.travis.yml
CHANGED
|
@@ -1,11 +1,25 @@
|
|
|
1
1
|
language: ruby
|
|
2
2
|
sudo: false
|
|
3
|
+
addons:
|
|
4
|
+
apt:
|
|
5
|
+
packages:
|
|
6
|
+
- chromium-browser
|
|
3
7
|
rvm:
|
|
4
|
-
- 2.
|
|
8
|
+
- 2.5
|
|
9
|
+
- 2.6
|
|
10
|
+
- 2.7
|
|
11
|
+
|
|
5
12
|
gemfile:
|
|
6
13
|
- test/gemfiles/rails_4_2.gemfile
|
|
7
14
|
- test/gemfiles/rails_5_0.gemfile
|
|
8
15
|
- test/gemfiles/rails_5_1.gemfile
|
|
16
|
+
- test/gemfiles/rails_6_0.gemfile
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
exclude:
|
|
20
|
+
rvm: 2.7
|
|
21
|
+
gemfile: test/gemfiles/rails_4_2.gemfile
|
|
22
|
+
|
|
9
23
|
cache: bundler
|
|
10
24
|
bundler_args: --path ../../vendor/bundle --without debug
|
|
11
25
|
notifications:
|
data/CHANGELOG.md
CHANGED
|
@@ -6,9 +6,9 @@ The changelog only includes changes specific to the RubyGem.
|
|
|
6
6
|
The Bootstrap framework changes can be found in [the Releases section of twbs/bootstrap](https://github.com/twbs/bootstrap/releases).
|
|
7
7
|
Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release of Bootstrap.
|
|
8
8
|
|
|
9
|
-
# 4.
|
|
9
|
+
# 4.2.1
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
* Bootstrap rubygem now depends on SassC instead of Sass.
|
|
12
12
|
|
|
13
13
|
# 4.0.0.beta2.1
|
|
14
14
|
|
data/README.md
CHANGED
|
@@ -17,7 +17,7 @@ Please see the appropriate guide for your environment of choice:
|
|
|
17
17
|
Add `bootstrap` to your Gemfile:
|
|
18
18
|
|
|
19
19
|
```ruby
|
|
20
|
-
gem 'bootstrap', '~> 4.
|
|
20
|
+
gem 'bootstrap', '~> 4.6.2'
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
Ensure that `sprockets-rails` is at least v2.3.2.
|
|
@@ -105,7 +105,7 @@ In the application Sass file, replace `@import 'bootstrap'` with:
|
|
|
105
105
|
@import 'bootstrap-custom';
|
|
106
106
|
```
|
|
107
107
|
|
|
108
|
-
[bootstrap-home]:
|
|
108
|
+
[bootstrap-home]: https://getbootstrap.com
|
|
109
109
|
[bootstrap-variables.scss]: https://github.com/twbs/bootstrap-rubygem/blob/master/templates/project/_bootstrap-variables.scss
|
|
110
110
|
[autoprefixer]: https://github.com/ai/autoprefixer
|
|
111
111
|
[popper.js]: https://popper.js.org
|
data/Rakefile
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
require 'bundler/gem_tasks'
|
|
2
|
+
|
|
1
3
|
lib_path = File.join(File.dirname(__FILE__), 'lib')
|
|
2
4
|
$:.unshift(lib_path) unless $:.include?(lib_path)
|
|
3
5
|
|
|
@@ -43,13 +45,13 @@ end
|
|
|
43
45
|
|
|
44
46
|
desc 'Dumps output to a CSS file for testing'
|
|
45
47
|
task :debug do
|
|
46
|
-
require '
|
|
48
|
+
require 'sassc'
|
|
47
49
|
require './lib/bootstrap'
|
|
48
50
|
require 'term/ansicolor'
|
|
49
51
|
require 'autoprefixer-rails'
|
|
50
52
|
path = Bootstrap.stylesheets_path
|
|
51
53
|
%w(_bootstrap _bootstrap-reboot _bootstrap-grid).each do |file|
|
|
52
|
-
engine =
|
|
54
|
+
engine = SassC::Engine.new(File.read("#{path}/#{file}.scss"), syntax: :scss, load_paths: [path])
|
|
53
55
|
out = File.join('tmp', "#{file[1..-1]}.css")
|
|
54
56
|
css = engine.render
|
|
55
57
|
css = AutoprefixerRails.process(css)
|
|
@@ -1,61 +1,74 @@
|
|
|
1
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* Bootstrap alert.js v4.6.2 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
|
+
*/
|
|
6
|
+
(function (global, factory) {
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['jquery', './util'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.jQuery, global.Util));
|
|
10
|
+
})(this, (function ($, Util) { 'use strict';
|
|
11
|
+
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
+
|
|
14
|
+
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
|
15
|
+
var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
|
|
16
|
+
|
|
17
|
+
function _defineProperties(target, props) {
|
|
18
|
+
for (var i = 0; i < props.length; i++) {
|
|
19
|
+
var descriptor = props[i];
|
|
20
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
21
|
+
descriptor.configurable = true;
|
|
22
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
23
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
|
28
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
29
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
30
|
+
Object.defineProperty(Constructor, "prototype", {
|
|
31
|
+
writable: false
|
|
32
|
+
});
|
|
33
|
+
return Constructor;
|
|
34
|
+
}
|
|
2
35
|
|
|
3
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* --------------------------------------------------------------------------
|
|
7
|
-
* Bootstrap (v4.0.0-beta.3): alert.js
|
|
8
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
|
9
|
-
* --------------------------------------------------------------------------
|
|
10
|
-
*/
|
|
11
|
-
var Alert = function ($) {
|
|
12
36
|
/**
|
|
13
|
-
* ------------------------------------------------------------------------
|
|
14
37
|
* Constants
|
|
15
|
-
* ------------------------------------------------------------------------
|
|
16
38
|
*/
|
|
39
|
+
|
|
17
40
|
var NAME = 'alert';
|
|
18
|
-
var VERSION = '4.
|
|
41
|
+
var VERSION = '4.6.2';
|
|
19
42
|
var DATA_KEY = 'bs.alert';
|
|
20
43
|
var EVENT_KEY = "." + DATA_KEY;
|
|
21
44
|
var DATA_API_KEY = '.data-api';
|
|
22
|
-
var JQUERY_NO_CONFLICT =
|
|
23
|
-
var
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
var
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
ALERT: 'alert',
|
|
34
|
-
FADE: 'fade',
|
|
35
|
-
SHOW: 'show'
|
|
36
|
-
/**
|
|
37
|
-
* ------------------------------------------------------------------------
|
|
38
|
-
* Class Definition
|
|
39
|
-
* ------------------------------------------------------------------------
|
|
40
|
-
*/
|
|
41
|
-
|
|
42
|
-
};
|
|
45
|
+
var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
|
|
46
|
+
var CLASS_NAME_ALERT = 'alert';
|
|
47
|
+
var CLASS_NAME_FADE = 'fade';
|
|
48
|
+
var CLASS_NAME_SHOW = 'show';
|
|
49
|
+
var EVENT_CLOSE = "close" + EVENT_KEY;
|
|
50
|
+
var EVENT_CLOSED = "closed" + EVENT_KEY;
|
|
51
|
+
var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
|
|
52
|
+
var SELECTOR_DISMISS = '[data-dismiss="alert"]';
|
|
53
|
+
/**
|
|
54
|
+
* Class definition
|
|
55
|
+
*/
|
|
43
56
|
|
|
44
|
-
var Alert =
|
|
45
|
-
/*#__PURE__*/
|
|
46
|
-
function () {
|
|
57
|
+
var Alert = /*#__PURE__*/function () {
|
|
47
58
|
function Alert(element) {
|
|
48
59
|
this._element = element;
|
|
49
|
-
} //
|
|
60
|
+
} // Getters
|
|
50
61
|
|
|
51
62
|
|
|
52
63
|
var _proto = Alert.prototype;
|
|
53
64
|
|
|
54
|
-
//
|
|
65
|
+
// Public
|
|
55
66
|
_proto.close = function close(element) {
|
|
56
|
-
|
|
67
|
+
var rootElement = this._element;
|
|
57
68
|
|
|
58
|
-
|
|
69
|
+
if (element) {
|
|
70
|
+
rootElement = this._getRootElement(element);
|
|
71
|
+
}
|
|
59
72
|
|
|
60
73
|
var customEvent = this._triggerCloseEvent(rootElement);
|
|
61
74
|
|
|
@@ -67,56 +80,57 @@ var Alert = function ($) {
|
|
|
67
80
|
};
|
|
68
81
|
|
|
69
82
|
_proto.dispose = function dispose() {
|
|
70
|
-
|
|
83
|
+
$__default["default"].removeData(this._element, DATA_KEY);
|
|
71
84
|
this._element = null;
|
|
72
|
-
}
|
|
73
|
-
|
|
85
|
+
} // Private
|
|
86
|
+
;
|
|
74
87
|
|
|
75
88
|
_proto._getRootElement = function _getRootElement(element) {
|
|
76
|
-
var selector =
|
|
89
|
+
var selector = Util__default["default"].getSelectorFromElement(element);
|
|
77
90
|
var parent = false;
|
|
78
91
|
|
|
79
92
|
if (selector) {
|
|
80
|
-
parent =
|
|
93
|
+
parent = document.querySelector(selector);
|
|
81
94
|
}
|
|
82
95
|
|
|
83
96
|
if (!parent) {
|
|
84
|
-
parent = $(element).closest("." +
|
|
97
|
+
parent = $__default["default"](element).closest("." + CLASS_NAME_ALERT)[0];
|
|
85
98
|
}
|
|
86
99
|
|
|
87
100
|
return parent;
|
|
88
101
|
};
|
|
89
102
|
|
|
90
103
|
_proto._triggerCloseEvent = function _triggerCloseEvent(element) {
|
|
91
|
-
var closeEvent =
|
|
92
|
-
$(element).trigger(closeEvent);
|
|
104
|
+
var closeEvent = $__default["default"].Event(EVENT_CLOSE);
|
|
105
|
+
$__default["default"](element).trigger(closeEvent);
|
|
93
106
|
return closeEvent;
|
|
94
107
|
};
|
|
95
108
|
|
|
96
109
|
_proto._removeElement = function _removeElement(element) {
|
|
97
110
|
var _this = this;
|
|
98
111
|
|
|
99
|
-
$(element).removeClass(
|
|
112
|
+
$__default["default"](element).removeClass(CLASS_NAME_SHOW);
|
|
100
113
|
|
|
101
|
-
if (
|
|
114
|
+
if (!$__default["default"](element).hasClass(CLASS_NAME_FADE)) {
|
|
102
115
|
this._destroyElement(element);
|
|
103
116
|
|
|
104
117
|
return;
|
|
105
118
|
}
|
|
106
119
|
|
|
107
|
-
|
|
120
|
+
var transitionDuration = Util__default["default"].getTransitionDurationFromElement(element);
|
|
121
|
+
$__default["default"](element).one(Util__default["default"].TRANSITION_END, function (event) {
|
|
108
122
|
return _this._destroyElement(element, event);
|
|
109
|
-
}).emulateTransitionEnd(
|
|
123
|
+
}).emulateTransitionEnd(transitionDuration);
|
|
110
124
|
};
|
|
111
125
|
|
|
112
126
|
_proto._destroyElement = function _destroyElement(element) {
|
|
113
|
-
$(element).detach().trigger(
|
|
114
|
-
}
|
|
115
|
-
|
|
127
|
+
$__default["default"](element).detach().trigger(EVENT_CLOSED).remove();
|
|
128
|
+
} // Static
|
|
129
|
+
;
|
|
116
130
|
|
|
117
131
|
Alert._jQueryInterface = function _jQueryInterface(config) {
|
|
118
132
|
return this.each(function () {
|
|
119
|
-
var $element = $(this);
|
|
133
|
+
var $element = $__default["default"](this);
|
|
120
134
|
var data = $element.data(DATA_KEY);
|
|
121
135
|
|
|
122
136
|
if (!data) {
|
|
@@ -150,26 +164,23 @@ var Alert = function ($) {
|
|
|
150
164
|
return Alert;
|
|
151
165
|
}();
|
|
152
166
|
/**
|
|
153
|
-
*
|
|
154
|
-
* Data Api implementation
|
|
155
|
-
* ------------------------------------------------------------------------
|
|
167
|
+
* Data API implementation
|
|
156
168
|
*/
|
|
157
169
|
|
|
158
170
|
|
|
159
|
-
$(document).on(
|
|
171
|
+
$__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert._handleDismiss(new Alert()));
|
|
160
172
|
/**
|
|
161
|
-
* ------------------------------------------------------------------------
|
|
162
173
|
* jQuery
|
|
163
|
-
* ------------------------------------------------------------------------
|
|
164
174
|
*/
|
|
165
175
|
|
|
166
|
-
|
|
167
|
-
|
|
176
|
+
$__default["default"].fn[NAME] = Alert._jQueryInterface;
|
|
177
|
+
$__default["default"].fn[NAME].Constructor = Alert;
|
|
168
178
|
|
|
169
|
-
|
|
170
|
-
|
|
179
|
+
$__default["default"].fn[NAME].noConflict = function () {
|
|
180
|
+
$__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
|
|
171
181
|
return Alert._jQueryInterface;
|
|
172
182
|
};
|
|
173
183
|
|
|
174
184
|
return Alert;
|
|
175
|
-
|
|
185
|
+
|
|
186
|
+
}));
|
|
@@ -1,87 +1,104 @@
|
|
|
1
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* Bootstrap button.js v4.6.2 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
|
+
*/
|
|
6
|
+
(function (global, factory) {
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['jquery'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.jQuery));
|
|
10
|
+
})(this, (function ($) { 'use strict';
|
|
11
|
+
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
+
|
|
14
|
+
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
|
15
|
+
|
|
16
|
+
function _defineProperties(target, props) {
|
|
17
|
+
for (var i = 0; i < props.length; i++) {
|
|
18
|
+
var descriptor = props[i];
|
|
19
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
20
|
+
descriptor.configurable = true;
|
|
21
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
22
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
2
25
|
|
|
3
|
-
function _createClass(Constructor, protoProps, staticProps) {
|
|
26
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
|
27
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
28
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
29
|
+
Object.defineProperty(Constructor, "prototype", {
|
|
30
|
+
writable: false
|
|
31
|
+
});
|
|
32
|
+
return Constructor;
|
|
33
|
+
}
|
|
4
34
|
|
|
5
|
-
/**
|
|
6
|
-
* --------------------------------------------------------------------------
|
|
7
|
-
* Bootstrap (v4.0.0-beta.3): button.js
|
|
8
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
|
9
|
-
* --------------------------------------------------------------------------
|
|
10
|
-
*/
|
|
11
|
-
var Button = function ($) {
|
|
12
35
|
/**
|
|
13
|
-
* ------------------------------------------------------------------------
|
|
14
36
|
* Constants
|
|
15
|
-
* ------------------------------------------------------------------------
|
|
16
37
|
*/
|
|
38
|
+
|
|
17
39
|
var NAME = 'button';
|
|
18
|
-
var VERSION = '4.
|
|
40
|
+
var VERSION = '4.6.2';
|
|
19
41
|
var DATA_KEY = 'bs.button';
|
|
20
42
|
var EVENT_KEY = "." + DATA_KEY;
|
|
21
43
|
var DATA_API_KEY = '.data-api';
|
|
22
|
-
var JQUERY_NO_CONFLICT =
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
var
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
* ------------------------------------------------------------------------
|
|
40
|
-
* Class Definition
|
|
41
|
-
* ------------------------------------------------------------------------
|
|
42
|
-
*/
|
|
43
|
-
|
|
44
|
-
};
|
|
44
|
+
var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
|
|
45
|
+
var CLASS_NAME_ACTIVE = 'active';
|
|
46
|
+
var CLASS_NAME_BUTTON = 'btn';
|
|
47
|
+
var CLASS_NAME_FOCUS = 'focus';
|
|
48
|
+
var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
|
|
49
|
+
var EVENT_FOCUS_BLUR_DATA_API = "focus" + EVENT_KEY + DATA_API_KEY + " " + ("blur" + EVENT_KEY + DATA_API_KEY);
|
|
50
|
+
var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
|
|
51
|
+
var SELECTOR_DATA_TOGGLE_CARROT = '[data-toggle^="button"]';
|
|
52
|
+
var SELECTOR_DATA_TOGGLES = '[data-toggle="buttons"]';
|
|
53
|
+
var SELECTOR_DATA_TOGGLE = '[data-toggle="button"]';
|
|
54
|
+
var SELECTOR_DATA_TOGGLES_BUTTONS = '[data-toggle="buttons"] .btn';
|
|
55
|
+
var SELECTOR_INPUT = 'input:not([type="hidden"])';
|
|
56
|
+
var SELECTOR_ACTIVE = '.active';
|
|
57
|
+
var SELECTOR_BUTTON = '.btn';
|
|
58
|
+
/**
|
|
59
|
+
* Class definition
|
|
60
|
+
*/
|
|
45
61
|
|
|
46
|
-
var Button =
|
|
47
|
-
/*#__PURE__*/
|
|
48
|
-
function () {
|
|
62
|
+
var Button = /*#__PURE__*/function () {
|
|
49
63
|
function Button(element) {
|
|
50
64
|
this._element = element;
|
|
51
|
-
|
|
65
|
+
this.shouldAvoidTriggerChange = false;
|
|
66
|
+
} // Getters
|
|
52
67
|
|
|
53
68
|
|
|
54
69
|
var _proto = Button.prototype;
|
|
55
70
|
|
|
56
|
-
//
|
|
71
|
+
// Public
|
|
57
72
|
_proto.toggle = function toggle() {
|
|
58
73
|
var triggerChangeEvent = true;
|
|
59
74
|
var addAriaPressed = true;
|
|
60
|
-
var rootElement = $(this._element).closest(
|
|
75
|
+
var rootElement = $__default["default"](this._element).closest(SELECTOR_DATA_TOGGLES)[0];
|
|
61
76
|
|
|
62
77
|
if (rootElement) {
|
|
63
|
-
var input =
|
|
78
|
+
var input = this._element.querySelector(SELECTOR_INPUT);
|
|
64
79
|
|
|
65
80
|
if (input) {
|
|
66
81
|
if (input.type === 'radio') {
|
|
67
|
-
if (input.checked &&
|
|
82
|
+
if (input.checked && this._element.classList.contains(CLASS_NAME_ACTIVE)) {
|
|
68
83
|
triggerChangeEvent = false;
|
|
69
84
|
} else {
|
|
70
|
-
var activeElement =
|
|
85
|
+
var activeElement = rootElement.querySelector(SELECTOR_ACTIVE);
|
|
71
86
|
|
|
72
87
|
if (activeElement) {
|
|
73
|
-
$(activeElement).removeClass(
|
|
88
|
+
$__default["default"](activeElement).removeClass(CLASS_NAME_ACTIVE);
|
|
74
89
|
}
|
|
75
90
|
}
|
|
76
91
|
}
|
|
77
92
|
|
|
78
93
|
if (triggerChangeEvent) {
|
|
79
|
-
if
|
|
80
|
-
|
|
94
|
+
// if it's not a radio button or checkbox don't add a pointless/invalid checked property to the input
|
|
95
|
+
if (input.type === 'checkbox' || input.type === 'radio') {
|
|
96
|
+
input.checked = !this._element.classList.contains(CLASS_NAME_ACTIVE);
|
|
81
97
|
}
|
|
82
98
|
|
|
83
|
-
|
|
84
|
-
|
|
99
|
+
if (!this.shouldAvoidTriggerChange) {
|
|
100
|
+
$__default["default"](input).trigger('change');
|
|
101
|
+
}
|
|
85
102
|
}
|
|
86
103
|
|
|
87
104
|
input.focus();
|
|
@@ -89,30 +106,35 @@ var Button = function ($) {
|
|
|
89
106
|
}
|
|
90
107
|
}
|
|
91
108
|
|
|
92
|
-
if (
|
|
93
|
-
|
|
94
|
-
|
|
109
|
+
if (!(this._element.hasAttribute('disabled') || this._element.classList.contains('disabled'))) {
|
|
110
|
+
if (addAriaPressed) {
|
|
111
|
+
this._element.setAttribute('aria-pressed', !this._element.classList.contains(CLASS_NAME_ACTIVE));
|
|
112
|
+
}
|
|
95
113
|
|
|
96
|
-
|
|
97
|
-
|
|
114
|
+
if (triggerChangeEvent) {
|
|
115
|
+
$__default["default"](this._element).toggleClass(CLASS_NAME_ACTIVE);
|
|
116
|
+
}
|
|
98
117
|
}
|
|
99
118
|
};
|
|
100
119
|
|
|
101
120
|
_proto.dispose = function dispose() {
|
|
102
|
-
|
|
121
|
+
$__default["default"].removeData(this._element, DATA_KEY);
|
|
103
122
|
this._element = null;
|
|
104
|
-
}
|
|
123
|
+
} // Static
|
|
124
|
+
;
|
|
105
125
|
|
|
106
|
-
|
|
107
|
-
Button._jQueryInterface = function _jQueryInterface(config) {
|
|
126
|
+
Button._jQueryInterface = function _jQueryInterface(config, avoidTriggerChange) {
|
|
108
127
|
return this.each(function () {
|
|
109
|
-
var
|
|
128
|
+
var $element = $__default["default"](this);
|
|
129
|
+
var data = $element.data(DATA_KEY);
|
|
110
130
|
|
|
111
131
|
if (!data) {
|
|
112
132
|
data = new Button(this);
|
|
113
|
-
$
|
|
133
|
+
$element.data(DATA_KEY, data);
|
|
114
134
|
}
|
|
115
135
|
|
|
136
|
+
data.shouldAvoidTriggerChange = avoidTriggerChange;
|
|
137
|
+
|
|
116
138
|
if (config === 'toggle') {
|
|
117
139
|
data[config]();
|
|
118
140
|
}
|
|
@@ -129,38 +151,78 @@ var Button = function ($) {
|
|
|
129
151
|
return Button;
|
|
130
152
|
}();
|
|
131
153
|
/**
|
|
132
|
-
*
|
|
133
|
-
* Data Api implementation
|
|
134
|
-
* ------------------------------------------------------------------------
|
|
154
|
+
* Data API implementation
|
|
135
155
|
*/
|
|
136
156
|
|
|
137
157
|
|
|
138
|
-
$(document).on(
|
|
139
|
-
event.preventDefault();
|
|
158
|
+
$__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
|
|
140
159
|
var button = event.target;
|
|
160
|
+
var initialButton = button;
|
|
141
161
|
|
|
142
|
-
if (!$(button).hasClass(
|
|
143
|
-
button = $(button).closest(
|
|
162
|
+
if (!$__default["default"](button).hasClass(CLASS_NAME_BUTTON)) {
|
|
163
|
+
button = $__default["default"](button).closest(SELECTOR_BUTTON)[0];
|
|
144
164
|
}
|
|
145
165
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
166
|
+
if (!button || button.hasAttribute('disabled') || button.classList.contains('disabled')) {
|
|
167
|
+
event.preventDefault(); // work around Firefox bug #1540995
|
|
168
|
+
} else {
|
|
169
|
+
var inputBtn = button.querySelector(SELECTOR_INPUT);
|
|
170
|
+
|
|
171
|
+
if (inputBtn && (inputBtn.hasAttribute('disabled') || inputBtn.classList.contains('disabled'))) {
|
|
172
|
+
event.preventDefault(); // work around Firefox bug #1540995
|
|
173
|
+
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
if (initialButton.tagName === 'INPUT' || button.tagName !== 'LABEL') {
|
|
178
|
+
Button._jQueryInterface.call($__default["default"](button), 'toggle', initialButton.tagName === 'INPUT');
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}).on(EVENT_FOCUS_BLUR_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
|
|
182
|
+
var button = $__default["default"](event.target).closest(SELECTOR_BUTTON)[0];
|
|
183
|
+
$__default["default"](button).toggleClass(CLASS_NAME_FOCUS, /^focus(in)?$/.test(event.type));
|
|
184
|
+
});
|
|
185
|
+
$__default["default"](window).on(EVENT_LOAD_DATA_API, function () {
|
|
186
|
+
// ensure correct active class is set to match the controls' actual values/states
|
|
187
|
+
// find all checkboxes/readio buttons inside data-toggle groups
|
|
188
|
+
var buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLES_BUTTONS));
|
|
189
|
+
|
|
190
|
+
for (var i = 0, len = buttons.length; i < len; i++) {
|
|
191
|
+
var button = buttons[i];
|
|
192
|
+
var input = button.querySelector(SELECTOR_INPUT);
|
|
193
|
+
|
|
194
|
+
if (input.checked || input.hasAttribute('checked')) {
|
|
195
|
+
button.classList.add(CLASS_NAME_ACTIVE);
|
|
196
|
+
} else {
|
|
197
|
+
button.classList.remove(CLASS_NAME_ACTIVE);
|
|
198
|
+
}
|
|
199
|
+
} // find all button toggles
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE));
|
|
203
|
+
|
|
204
|
+
for (var _i = 0, _len = buttons.length; _i < _len; _i++) {
|
|
205
|
+
var _button = buttons[_i];
|
|
206
|
+
|
|
207
|
+
if (_button.getAttribute('aria-pressed') === 'true') {
|
|
208
|
+
_button.classList.add(CLASS_NAME_ACTIVE);
|
|
209
|
+
} else {
|
|
210
|
+
_button.classList.remove(CLASS_NAME_ACTIVE);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
150
213
|
});
|
|
151
214
|
/**
|
|
152
|
-
* ------------------------------------------------------------------------
|
|
153
215
|
* jQuery
|
|
154
|
-
* ------------------------------------------------------------------------
|
|
155
216
|
*/
|
|
156
217
|
|
|
157
|
-
|
|
158
|
-
|
|
218
|
+
$__default["default"].fn[NAME] = Button._jQueryInterface;
|
|
219
|
+
$__default["default"].fn[NAME].Constructor = Button;
|
|
159
220
|
|
|
160
|
-
|
|
161
|
-
|
|
221
|
+
$__default["default"].fn[NAME].noConflict = function () {
|
|
222
|
+
$__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
|
|
162
223
|
return Button._jQueryInterface;
|
|
163
224
|
};
|
|
164
225
|
|
|
165
226
|
return Button;
|
|
166
|
-
|
|
227
|
+
|
|
228
|
+
}));
|