bootstrap 5.2.3 → 5.3.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.
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