bootstrap 5.2.3 → 5.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +11 -5
  3. data/Gemfile +1 -0
  4. data/README.md +6 -2
  5. data/Rakefile +10 -1
  6. data/assets/javascripts/bootstrap/alert.js +22 -32
  7. data/assets/javascripts/bootstrap/base-component.js +22 -38
  8. data/assets/javascripts/bootstrap/button.js +19 -22
  9. data/assets/javascripts/bootstrap/carousel.js +52 -135
  10. data/assets/javascripts/bootstrap/collapse.js +40 -102
  11. data/assets/javascripts/bootstrap/dom/data.js +8 -12
  12. data/assets/javascripts/bootstrap/dom/event-handler.js +19 -66
  13. data/assets/javascripts/bootstrap/dom/manipulator.js +4 -17
  14. data/assets/javascripts/bootstrap/dom/selector-engine.js +42 -24
  15. data/assets/javascripts/bootstrap/dropdown.js +74 -145
  16. data/assets/javascripts/bootstrap/modal.js +53 -133
  17. data/assets/javascripts/bootstrap/offcanvas.js +50 -102
  18. data/assets/javascripts/bootstrap/popover.js +23 -29
  19. data/assets/javascripts/bootstrap/scrollspy.js +53 -90
  20. data/assets/javascripts/bootstrap/tab.js +63 -112
  21. data/assets/javascripts/bootstrap/toast.js +31 -73
  22. data/assets/javascripts/bootstrap/tooltip.js +75 -177
  23. data/assets/javascripts/bootstrap/util/backdrop.js +28 -54
  24. data/assets/javascripts/bootstrap/util/component-functions.js +13 -18
  25. data/assets/javascripts/bootstrap/util/config.js +15 -27
  26. data/assets/javascripts/bootstrap/util/focustrap.js +20 -36
  27. data/assets/javascripts/bootstrap/util/index.js +42 -111
  28. data/assets/javascripts/bootstrap/util/sanitizer.js +30 -42
  29. data/assets/javascripts/bootstrap/util/scrollbar.js +24 -50
  30. data/assets/javascripts/bootstrap/util/swipe.js +27 -48
  31. data/assets/javascripts/bootstrap/util/template-factory.js +25 -52
  32. data/assets/javascripts/bootstrap-sprockets.js +10 -10
  33. data/assets/javascripts/bootstrap.js +689 -1444
  34. data/assets/javascripts/bootstrap.min.js +3 -3
  35. data/assets/stylesheets/_bootstrap-grid.scss +1 -3
  36. data/assets/stylesheets/_bootstrap-reboot.scss +1 -0
  37. data/assets/stylesheets/_bootstrap-utilities.scss +19 -0
  38. data/assets/stylesheets/_bootstrap.scss +1 -0
  39. data/assets/stylesheets/bootstrap/_accordion.scss +9 -0
  40. data/assets/stylesheets/bootstrap/_alert.scss +8 -11
  41. data/assets/stylesheets/bootstrap/_button-group.scss +2 -2
  42. data/assets/stylesheets/bootstrap/_buttons.scss +3 -3
  43. data/assets/stylesheets/bootstrap/_card.scss +5 -0
  44. data/assets/stylesheets/bootstrap/_carousel.scss +20 -2
  45. data/assets/stylesheets/bootstrap/_close.scss +32 -9
  46. data/assets/stylesheets/bootstrap/_dropdown.scss +1 -0
  47. data/assets/stylesheets/bootstrap/_functions.scss +1 -1
  48. data/assets/stylesheets/bootstrap/_grid.scss +6 -0
  49. data/assets/stylesheets/bootstrap/_helpers.scss +2 -0
  50. data/assets/stylesheets/bootstrap/_list-group.scss +12 -7
  51. data/assets/stylesheets/bootstrap/_maps.scss +120 -0
  52. data/assets/stylesheets/bootstrap/_mixins.scss +1 -2
  53. data/assets/stylesheets/bootstrap/_nav.scss +42 -17
  54. data/assets/stylesheets/bootstrap/_navbar.scss +15 -4
  55. data/assets/stylesheets/bootstrap/_offcanvas.scss +4 -2
  56. data/assets/stylesheets/bootstrap/_pagination.scss +1 -1
  57. data/assets/stylesheets/bootstrap/_progress.scss +10 -1
  58. data/assets/stylesheets/bootstrap/_reboot.scss +8 -7
  59. data/assets/stylesheets/bootstrap/_root.scss +124 -10
  60. data/assets/stylesheets/bootstrap/_tables.scss +18 -11
  61. data/assets/stylesheets/bootstrap/_tooltip.scss +4 -5
  62. data/assets/stylesheets/bootstrap/_utilities.scss +175 -16
  63. data/assets/stylesheets/bootstrap/_variables-dark.scss +87 -0
  64. data/assets/stylesheets/bootstrap/_variables.scss +282 -169
  65. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +23 -3
  66. data/assets/stylesheets/bootstrap/forms/_form-check.scss +26 -12
  67. data/assets/stylesheets/bootstrap/forms/_form-control.scss +24 -4
  68. data/assets/stylesheets/bootstrap/forms/_form-range.scss +3 -3
  69. data/assets/stylesheets/bootstrap/forms/_form-select.scss +12 -3
  70. data/assets/stylesheets/bootstrap/forms/_input-group.scss +1 -1
  71. data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +1 -4
  72. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +20 -2
  73. data/assets/stylesheets/bootstrap/helpers/_focus-ring.scss +5 -0
  74. data/assets/stylesheets/bootstrap/helpers/_icon-link.scss +25 -0
  75. data/assets/stylesheets/bootstrap/helpers/_vr.scss +1 -1
  76. data/assets/stylesheets/bootstrap/mixins/_alert.scss +4 -1
  77. data/assets/stylesheets/bootstrap/mixins/_banner.scss +2 -4
  78. data/assets/stylesheets/bootstrap/mixins/_caret.scss +30 -25
  79. data/assets/stylesheets/bootstrap/mixins/_color-mode.scss +21 -0
  80. data/assets/stylesheets/bootstrap/mixins/_forms.scss +8 -7
  81. data/assets/stylesheets/bootstrap/mixins/_grid.scss +1 -1
  82. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -0
  83. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +1 -1
  84. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +5 -1
  85. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +23 -29
  86. data/bootstrap.gemspec +4 -3
  87. data/lib/bootstrap/engine.rb +7 -1
  88. data/lib/bootstrap/version.rb +2 -2
  89. data/tasks/updater/js.rb +1 -1
  90. data/tasks/updater/scss.rb +2 -2
  91. data/test/gemfiles/rails_4_2.gemfile +1 -1
  92. data/test/gemfiles/rails_5_0.gemfile +1 -1
  93. data/test/gemfiles/rails_5_1.gemfile +1 -1
  94. data/test/gemfiles/rails_5_2.gemfile +1 -1
  95. data/test/gemfiles/rails_6_0.gemfile +1 -0
  96. data/test/gemfiles/rails_6_1.gemfile +1 -0
  97. data/test/gemfiles/rails_7_0_dartsass.gemfile +8 -0
  98. data/test/gemfiles/{rails_7_0.gemfile → rails_7_0_sassc.gemfile} +1 -0
  99. metadata +35 -15
  100. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +0 -18
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5b9b76b3a8107fa8c73e4b760273a561e05e569e150a086196903c4ccb49ddbc
4
- data.tar.gz: 116115a60a5315e39b3bb6d5df9fe3568d48c139682d17f6de88b48762ddb06b
3
+ metadata.gz: 9cc8c9361e6004e1f33ea619081fc68672a49d7f20e8a6bcf53ac8ec12e4c662
4
+ data.tar.gz: e65b879fec0203e16027ed41093bc20d276e202168abec214b9295a04ac0b3a8
5
5
  SHA512:
6
- metadata.gz: '054324796db1631c6ad2dc41451f8b39dfcede1a4526a665c87d51549190dba106641fc4cf4716bd3e28f3332039369eb37f0806a5a4617acb08617373ea2bb3'
7
- data.tar.gz: c53409f131522034f9d02b5d4b18b6f69460be5ccfb232639132f5939ac63b3aa2ee7de91c6ac119c6c656ca91f2656579e20e9e50be6568564da9c3aa5f8263
6
+ metadata.gz: 94d62cb6112a90a4a97ae631e3895f18650217e67f872565b26efa6a5a3228d223782e0f82a722efc8f0881b60f409c7ba320b2069962436952eeaf0c6b2431d
7
+ data.tar.gz: 8e0c37862c25003c9ba9a8892614050b4d8e82bdb4b902060f3aeb7f7af1dbcb89f89934e43a3f724a672b29eac7c87d2f789435283f9068c238719692159f2d
@@ -1,8 +1,9 @@
1
1
  name: CI
2
2
 
3
3
  on:
4
- push:
5
- pull_request:
4
+ - push
5
+ - pull_request
6
+ - workflow_dispatch
6
7
 
7
8
  jobs:
8
9
  test:
@@ -18,7 +19,8 @@ jobs:
18
19
  - test/gemfiles/rails_5_2.gemfile
19
20
  - test/gemfiles/rails_6_0.gemfile
20
21
  - test/gemfiles/rails_6_1.gemfile
21
- - test/gemfiles/rails_7_0.gemfile
22
+ - test/gemfiles/rails_7_0_sassc.gemfile
23
+ - test/gemfiles/rails_7_0_dartsass.gemfile
22
24
  include:
23
25
  - ruby_version: '2.5'
24
26
  gemfile: test/gemfiles/rails_4_2.gemfile
@@ -26,9 +28,13 @@ jobs:
26
28
  gemfile: test/gemfiles/rails_4_2.gemfile
27
29
  exclude:
28
30
  - ruby_version: '2.5'
29
- gemfile: test/gemfiles/rails_7_0.gemfile
31
+ gemfile: test/gemfiles/rails_7_0_sassc.gemfile
32
+ - ruby_version: '2.5'
33
+ gemfile: test/gemfiles/rails_7_0_dartsass.gemfile
34
+ - ruby_version: '2.6'
35
+ gemfile: test/gemfiles/rails_7_0_sassc.gemfile
30
36
  - ruby_version: '2.6'
31
- gemfile: test/gemfiles/rails_7_0.gemfile
37
+ gemfile: test/gemfiles/rails_7_0_dartsass.gemfile
32
38
  - ruby_version: '3.0'
33
39
  gemfile: test/gemfiles/rails_5_0.gemfile
34
40
  - ruby_version: '3.0'
data/Gemfile CHANGED
@@ -4,6 +4,7 @@ gemspec
4
4
 
5
5
  group :development do
6
6
  gem 'popper_js', '>= 1.12.3'
7
+ gem 'dartsass-sprockets'
7
8
  end
8
9
 
9
10
  group :debug do
data/README.md CHANGED
@@ -21,10 +21,14 @@ Please see the appropriate guide for your environment of choice:
21
21
  Add `bootstrap` to your Gemfile:
22
22
 
23
23
  ```ruby
24
- gem 'bootstrap', '~> 5.2.2'
24
+ gem 'bootstrap', '~> 5.3.2'
25
25
  ```
26
26
 
27
- Ensure that `sprockets-rails` is at least v2.3.2.
27
+ This gem requires a Sass engine, so make sure you have **one** of these two gems in your Gemfile:
28
+ - [`dartsass-sprockets`](https://github.com/tablecheck/dartsass-sprockets): Dart Sass engine, recommended but only works for Ruby 2.6+ and Rails 5+
29
+ - [`sassc-rails`](https://github.com/sass/sassc-rails): SassC engine, deprecated but compatible with Ruby 2.3+ and Rails 4
30
+
31
+ Also ensure that `sprockets-rails` is at least v2.3.2.
28
32
 
29
33
  `bundle install` and restart your server to make the files available through the pipeline.
30
34
 
data/Rakefile CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'bundler/gem_tasks'
2
+ require 'bundler/setup'
2
3
 
3
4
  lib_path = File.join(File.dirname(__FILE__), 'lib')
4
5
  $:.unshift(lib_path) unless $:.include?(lib_path)
@@ -45,12 +46,20 @@ end
45
46
 
46
47
  desc 'Dumps output to a CSS file for testing'
47
48
  task :debug do
48
- require 'sassc'
49
+ begin
50
+ require 'dartsass-ruby'
51
+ rescue LoadError
52
+ require 'sassc'
53
+ rescue LoadError
54
+ raise LoadError.new("bootstrap-rubygem requires a Sass engine. Please add dartsass-sprockets or sassc-rails to your dependencies.")
55
+ end
49
56
  require './lib/bootstrap'
50
57
  require 'term/ansicolor'
51
58
  require 'autoprefixer-rails'
52
59
  path = Bootstrap.stylesheets_path
53
60
  %w(_bootstrap _bootstrap-reboot _bootstrap-grid).each do |file|
61
+ # For ease of upgrading, the root namespace ::SassC is still used by dartsass-sprockets.
62
+ # This is planned to be renamed in a future major version release.
54
63
  engine = SassC::Engine.new(File.read("#{path}/#{file}.scss"), syntax: :scss, load_paths: [path])
55
64
  out = File.join('tmp', "#{file[1..-1]}.css")
56
65
  css = engine.render
@@ -1,25 +1,22 @@
1
1
  /*!
2
- * Bootstrap alert.js v5.2.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap alert.js v5.3.2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
4
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./util/index'), require('./dom/event-handler'), require('./base-component'), require('./util/component-functions')) :
8
- typeof define === 'function' && define.amd ? define(['./util/index', './dom/event-handler', './base-component', './util/component-functions'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.Index, global.EventHandler, global.BaseComponent, global.ComponentFunctions));
10
- })(this, (function (index, EventHandler, BaseComponent, componentFunctions) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
15
- const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./base-component.js'), require('./dom/event-handler.js'), require('./util/component-functions.js'), require('./util/index.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./base-component', './dom/event-handler', './util/component-functions', './util/index'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.BaseComponent, global.EventHandler, global.ComponentFunctions, global.Index));
10
+ })(this, (function (BaseComponent, EventHandler, componentFunctions_js, index_js) { 'use strict';
16
11
 
17
12
  /**
18
13
  * --------------------------------------------------------------------------
19
- * Bootstrap (v5.2.3): alert.js
14
+ * Bootstrap alert.js
20
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
21
16
  * --------------------------------------------------------------------------
22
17
  */
18
+
19
+
23
20
  /**
24
21
  * Constants
25
22
  */
@@ -31,68 +28,61 @@
31
28
  const EVENT_CLOSED = `closed${EVENT_KEY}`;
32
29
  const CLASS_NAME_FADE = 'fade';
33
30
  const CLASS_NAME_SHOW = 'show';
31
+
34
32
  /**
35
33
  * Class definition
36
34
  */
37
35
 
38
- class Alert extends BaseComponent__default.default {
36
+ class Alert extends BaseComponent {
39
37
  // Getters
40
38
  static get NAME() {
41
39
  return NAME;
42
- } // Public
43
-
40
+ }
44
41
 
42
+ // Public
45
43
  close() {
46
- const closeEvent = EventHandler__default.default.trigger(this._element, EVENT_CLOSE);
47
-
44
+ const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE);
48
45
  if (closeEvent.defaultPrevented) {
49
46
  return;
50
47
  }
51
-
52
48
  this._element.classList.remove(CLASS_NAME_SHOW);
53
-
54
49
  const isAnimated = this._element.classList.contains(CLASS_NAME_FADE);
55
-
56
50
  this._queueCallback(() => this._destroyElement(), this._element, isAnimated);
57
- } // Private
58
-
51
+ }
59
52
 
53
+ // Private
60
54
  _destroyElement() {
61
55
  this._element.remove();
62
-
63
- EventHandler__default.default.trigger(this._element, EVENT_CLOSED);
56
+ EventHandler.trigger(this._element, EVENT_CLOSED);
64
57
  this.dispose();
65
- } // Static
66
-
58
+ }
67
59
 
60
+ // Static
68
61
  static jQueryInterface(config) {
69
62
  return this.each(function () {
70
63
  const data = Alert.getOrCreateInstance(this);
71
-
72
64
  if (typeof config !== 'string') {
73
65
  return;
74
66
  }
75
-
76
67
  if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
77
68
  throw new TypeError(`No method named "${config}"`);
78
69
  }
79
-
80
70
  data[config](this);
81
71
  });
82
72
  }
83
-
84
73
  }
74
+
85
75
  /**
86
76
  * Data API implementation
87
77
  */
88
78
 
79
+ componentFunctions_js.enableDismissTrigger(Alert, 'close');
89
80
 
90
- componentFunctions.enableDismissTrigger(Alert, 'close');
91
81
  /**
92
82
  * jQuery
93
83
  */
94
84
 
95
- index.defineJQueryPlugin(Alert);
85
+ index_js.defineJQueryPlugin(Alert);
96
86
 
97
87
  return Alert;
98
88
 
@@ -1,97 +1,81 @@
1
1
  /*!
2
- * Bootstrap base-component.js v5.2.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap base-component.js v5.3.2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
4
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data'), require('./util/index'), require('./dom/event-handler'), require('./util/config')) :
8
- typeof define === 'function' && define.amd ? define(['./dom/data', './util/index', './dom/event-handler', './util/config'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.BaseComponent = factory(global.Data, global.Index, global.EventHandler, global.Config));
10
- })(this, (function (Data, index, EventHandler, Config) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
- const Config__default = /*#__PURE__*/_interopDefaultLegacy(Config);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./util/config.js'), require('./util/index.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './util/config', './util/index'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.BaseComponent = factory(global.Data, global.EventHandler, global.Config, global.Index));
10
+ })(this, (function (Data, EventHandler, Config, index_js) { 'use strict';
17
11
 
18
12
  /**
19
13
  * --------------------------------------------------------------------------
20
- * Bootstrap (v5.2.3): base-component.js
14
+ * Bootstrap base-component.js
21
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
22
16
  * --------------------------------------------------------------------------
23
17
  */
18
+
19
+
24
20
  /**
25
21
  * Constants
26
22
  */
27
23
 
28
- const VERSION = '5.2.3';
24
+ const VERSION = '5.3.2';
25
+
29
26
  /**
30
27
  * Class definition
31
28
  */
32
29
 
33
- class BaseComponent extends Config__default.default {
30
+ class BaseComponent extends Config {
34
31
  constructor(element, config) {
35
32
  super();
36
- element = index.getElement(element);
37
-
33
+ element = index_js.getElement(element);
38
34
  if (!element) {
39
35
  return;
40
36
  }
41
-
42
37
  this._element = element;
43
38
  this._config = this._getConfig(config);
44
- Data__default.default.set(this._element, this.constructor.DATA_KEY, this);
45
- } // Public
46
-
39
+ Data.set(this._element, this.constructor.DATA_KEY, this);
40
+ }
47
41
 
42
+ // Public
48
43
  dispose() {
49
- Data__default.default.remove(this._element, this.constructor.DATA_KEY);
50
- EventHandler__default.default.off(this._element, this.constructor.EVENT_KEY);
51
-
44
+ Data.remove(this._element, this.constructor.DATA_KEY);
45
+ EventHandler.off(this._element, this.constructor.EVENT_KEY);
52
46
  for (const propertyName of Object.getOwnPropertyNames(this)) {
53
47
  this[propertyName] = null;
54
48
  }
55
49
  }
56
-
57
50
  _queueCallback(callback, element, isAnimated = true) {
58
- index.executeAfterTransition(callback, element, isAnimated);
51
+ index_js.executeAfterTransition(callback, element, isAnimated);
59
52
  }
60
-
61
53
  _getConfig(config) {
62
54
  config = this._mergeConfigObj(config, this._element);
63
55
  config = this._configAfterMerge(config);
64
-
65
56
  this._typeCheckConfig(config);
66
-
67
57
  return config;
68
- } // Static
69
-
58
+ }
70
59
 
60
+ // Static
71
61
  static getInstance(element) {
72
- return Data__default.default.get(index.getElement(element), this.DATA_KEY);
62
+ return Data.get(index_js.getElement(element), this.DATA_KEY);
73
63
  }
74
-
75
64
  static getOrCreateInstance(element, config = {}) {
76
65
  return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);
77
66
  }
78
-
79
67
  static get VERSION() {
80
68
  return VERSION;
81
69
  }
82
-
83
70
  static get DATA_KEY() {
84
71
  return `bs.${this.NAME}`;
85
72
  }
86
-
87
73
  static get EVENT_KEY() {
88
74
  return `.${this.DATA_KEY}`;
89
75
  }
90
-
91
76
  static eventName(name) {
92
77
  return `${name}${this.EVENT_KEY}`;
93
78
  }
94
-
95
79
  }
96
80
 
97
81
  return BaseComponent;
@@ -1,25 +1,22 @@
1
1
  /*!
2
- * Bootstrap button.js v5.2.3 (https://getbootstrap.com/)
3
- * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap button.js v5.3.2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
4
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./util/index'), require('./dom/event-handler'), require('./base-component')) :
8
- typeof define === 'function' && define.amd ? define(['./util/index', './dom/event-handler', './base-component'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.Index, global.EventHandler, global.BaseComponent));
10
- })(this, (function (index, EventHandler, BaseComponent) { 'use strict';
11
-
12
- const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
-
14
- const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
15
- const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./base-component.js'), require('./dom/event-handler.js'), require('./util/index.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./base-component', './dom/event-handler', './util/index'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.BaseComponent, global.EventHandler, global.Index));
10
+ })(this, (function (BaseComponent, EventHandler, index_js) { 'use strict';
16
11
 
17
12
  /**
18
13
  * --------------------------------------------------------------------------
19
- * Bootstrap (v5.2.3): button.js
14
+ * Bootstrap button.js
20
15
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
21
16
  * --------------------------------------------------------------------------
22
17
  */
18
+
19
+
23
20
  /**
24
21
  * Constants
25
22
  */
@@ -31,50 +28,50 @@
31
28
  const CLASS_NAME_ACTIVE = 'active';
32
29
  const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="button"]';
33
30
  const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;
31
+
34
32
  /**
35
33
  * Class definition
36
34
  */
37
35
 
38
- class Button extends BaseComponent__default.default {
36
+ class Button extends BaseComponent {
39
37
  // Getters
40
38
  static get NAME() {
41
39
  return NAME;
42
- } // Public
43
-
40
+ }
44
41
 
42
+ // Public
45
43
  toggle() {
46
44
  // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
47
45
  this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE));
48
- } // Static
49
-
46
+ }
50
47
 
48
+ // Static
51
49
  static jQueryInterface(config) {
52
50
  return this.each(function () {
53
51
  const data = Button.getOrCreateInstance(this);
54
-
55
52
  if (config === 'toggle') {
56
53
  data[config]();
57
54
  }
58
55
  });
59
56
  }
60
-
61
57
  }
58
+
62
59
  /**
63
60
  * Data API implementation
64
61
  */
65
62
 
66
-
67
- EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
63
+ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
68
64
  event.preventDefault();
69
65
  const button = event.target.closest(SELECTOR_DATA_TOGGLE);
70
66
  const data = Button.getOrCreateInstance(button);
71
67
  data.toggle();
72
68
  });
69
+
73
70
  /**
74
71
  * jQuery
75
72
  */
76
73
 
77
- index.defineJQueryPlugin(Button);
74
+ index_js.defineJQueryPlugin(Button);
78
75
 
79
76
  return Button;
80
77