@tabler/core 1.0.0-beta11 → 1.0.0-beta13

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 (250) hide show
  1. package/README.md +33 -10
  2. package/dist/css/demo.css +43 -231
  3. package/dist/css/demo.min.css +3 -3
  4. package/dist/css/demo.rtl.css +43 -231
  5. package/dist/css/demo.rtl.min.css +3 -3
  6. package/dist/css/tabler-flags.css +4 -4
  7. package/dist/css/tabler-flags.min.css +3 -3
  8. package/dist/css/tabler-flags.rtl.css +4 -4
  9. package/dist/css/tabler-flags.rtl.min.css +3 -3
  10. package/dist/css/tabler-payments.css +2 -2
  11. package/dist/css/tabler-payments.min.css +2 -2
  12. package/dist/css/tabler-payments.rtl.css +2 -2
  13. package/dist/css/tabler-payments.rtl.min.css +2 -2
  14. package/dist/css/tabler-vendors.css +138 -67
  15. package/dist/css/tabler-vendors.min.css +3 -3
  16. package/dist/css/tabler-vendors.rtl.css +138 -67
  17. package/dist/css/tabler-vendors.rtl.min.css +3 -3
  18. package/dist/css/tabler.css +3234 -2860
  19. package/dist/css/tabler.min.css +4 -4
  20. package/dist/css/tabler.rtl.css +3234 -2860
  21. package/dist/css/tabler.rtl.min.css +4 -4
  22. package/dist/js/demo-theme.js +32 -0
  23. package/dist/js/demo-theme.min.js +9 -0
  24. package/dist/js/demo.js +2 -12
  25. package/dist/js/demo.min.js +3 -3
  26. package/dist/js/tabler.esm.js +219 -129
  27. package/dist/js/tabler.esm.min.js +9 -3
  28. package/dist/js/tabler.js +242 -130
  29. package/dist/js/tabler.min.js +9 -3
  30. package/dist/libs/apexcharts/dist/apexcharts.amd.js +1 -1
  31. package/dist/libs/apexcharts/dist/apexcharts.common.js +3 -3
  32. package/dist/libs/apexcharts/dist/apexcharts.esm.js +3 -3
  33. package/dist/libs/apexcharts/dist/apexcharts.js +27 -8
  34. package/dist/libs/apexcharts/dist/apexcharts.min.js +3 -3
  35. package/dist/libs/bootstrap/dist/js/bootstrap.bundle.js +162 -144
  36. package/dist/libs/bootstrap/dist/js/bootstrap.bundle.js.map +1 -1
  37. package/dist/libs/bootstrap/dist/js/bootstrap.bundle.min.js +2 -2
  38. package/dist/libs/bootstrap/dist/js/bootstrap.bundle.min.js.map +1 -1
  39. package/dist/libs/bootstrap/dist/js/bootstrap.esm.js +101 -94
  40. package/dist/libs/bootstrap/dist/js/bootstrap.esm.js.map +1 -1
  41. package/dist/libs/bootstrap/dist/js/bootstrap.esm.min.js +2 -2
  42. package/dist/libs/bootstrap/dist/js/bootstrap.esm.min.js.map +1 -1
  43. package/dist/libs/bootstrap/dist/js/bootstrap.js +102 -95
  44. package/dist/libs/bootstrap/dist/js/bootstrap.js.map +1 -1
  45. package/dist/libs/bootstrap/dist/js/bootstrap.min.js +2 -2
  46. package/dist/libs/bootstrap/dist/js/bootstrap.min.js.map +1 -1
  47. package/dist/libs/jsvectormap/dist/js/jsvectormap.js +1061 -1066
  48. package/dist/libs/jsvectormap/dist/js/jsvectormap.min.js +1 -1
  49. package/dist/libs/nouislider/dist/nouislider.d.ts +1 -1
  50. package/dist/libs/tinymce/CHANGELOG.md +45 -0
  51. package/dist/libs/tinymce/composer.json +1 -1
  52. package/dist/libs/tinymce/icons/default/icons.js +2 -0
  53. package/dist/libs/tinymce/icons/default/icons.min.js +1 -1
  54. package/dist/libs/tinymce/models/dom/model.js +14 -10
  55. package/dist/libs/tinymce/models/dom/model.min.js +2 -2
  56. package/dist/libs/tinymce/package.json +1 -1
  57. package/dist/libs/tinymce/plugins/advlist/plugin.js +16 -9
  58. package/dist/libs/tinymce/plugins/advlist/plugin.min.js +2 -2
  59. package/dist/libs/tinymce/plugins/anchor/plugin.js +7 -6
  60. package/dist/libs/tinymce/plugins/anchor/plugin.min.js +2 -2
  61. package/dist/libs/tinymce/plugins/autolink/plugin.js +93 -97
  62. package/dist/libs/tinymce/plugins/autolink/plugin.min.js +2 -2
  63. package/dist/libs/tinymce/plugins/autoresize/plugin.js +3 -2
  64. package/dist/libs/tinymce/plugins/autoresize/plugin.min.js +2 -2
  65. package/dist/libs/tinymce/plugins/autosave/plugin.js +11 -10
  66. package/dist/libs/tinymce/plugins/autosave/plugin.min.js +2 -2
  67. package/dist/libs/tinymce/plugins/charmap/plugin.js +17 -7
  68. package/dist/libs/tinymce/plugins/charmap/plugin.min.js +2 -2
  69. package/dist/libs/tinymce/plugins/code/plugin.js +1 -1
  70. package/dist/libs/tinymce/plugins/code/plugin.min.js +1 -1
  71. package/dist/libs/tinymce/plugins/codesample/plugin.js +4 -6
  72. package/dist/libs/tinymce/plugins/codesample/plugin.min.js +2 -2
  73. package/dist/libs/tinymce/plugins/directionality/plugin.js +1 -1
  74. package/dist/libs/tinymce/plugins/directionality/plugin.min.js +1 -1
  75. package/dist/libs/tinymce/plugins/emoticons/plugin.js +10 -4
  76. package/dist/libs/tinymce/plugins/emoticons/plugin.min.js +2 -2
  77. package/dist/libs/tinymce/plugins/fullscreen/plugin.js +11 -5
  78. package/dist/libs/tinymce/plugins/fullscreen/plugin.min.js +2 -2
  79. package/dist/libs/tinymce/plugins/help/plugin.js +92 -19
  80. package/dist/libs/tinymce/plugins/help/plugin.min.js +2 -2
  81. package/dist/libs/tinymce/plugins/image/plugin.js +50 -37
  82. package/dist/libs/tinymce/plugins/image/plugin.min.js +2 -2
  83. package/dist/libs/tinymce/plugins/importcss/plugin.js +8 -6
  84. package/dist/libs/tinymce/plugins/importcss/plugin.min.js +2 -2
  85. package/dist/libs/tinymce/plugins/insertdatetime/plugin.js +2 -3
  86. package/dist/libs/tinymce/plugins/insertdatetime/plugin.min.js +2 -2
  87. package/dist/libs/tinymce/plugins/link/plugin.js +57 -43
  88. package/dist/libs/tinymce/plugins/link/plugin.min.js +2 -2
  89. package/dist/libs/tinymce/plugins/lists/plugin.js +120 -74
  90. package/dist/libs/tinymce/plugins/lists/plugin.min.js +2 -2
  91. package/dist/libs/tinymce/plugins/media/plugin.js +39 -24
  92. package/dist/libs/tinymce/plugins/media/plugin.min.js +2 -2
  93. package/dist/libs/tinymce/plugins/nonbreaking/plugin.js +1 -1
  94. package/dist/libs/tinymce/plugins/nonbreaking/plugin.min.js +1 -1
  95. package/dist/libs/tinymce/plugins/pagebreak/plugin.js +2 -2
  96. package/dist/libs/tinymce/plugins/pagebreak/plugin.min.js +2 -2
  97. package/dist/libs/tinymce/plugins/preview/plugin.js +1 -1
  98. package/dist/libs/tinymce/plugins/preview/plugin.min.js +1 -1
  99. package/dist/libs/tinymce/plugins/quickbars/plugin.js +3 -2
  100. package/dist/libs/tinymce/plugins/quickbars/plugin.min.js +2 -2
  101. package/dist/libs/tinymce/plugins/save/plugin.js +1 -1
  102. package/dist/libs/tinymce/plugins/save/plugin.min.js +1 -1
  103. package/dist/libs/tinymce/plugins/searchreplace/plugin.js +13 -13
  104. package/dist/libs/tinymce/plugins/searchreplace/plugin.min.js +2 -2
  105. package/dist/libs/tinymce/plugins/table/plugin.js +42 -37
  106. package/dist/libs/tinymce/plugins/table/plugin.min.js +2 -2
  107. package/dist/libs/tinymce/plugins/template/plugin.js +7 -4
  108. package/dist/libs/tinymce/plugins/template/plugin.min.js +2 -2
  109. package/dist/libs/tinymce/plugins/visualblocks/plugin.js +1 -1
  110. package/dist/libs/tinymce/plugins/visualblocks/plugin.min.js +1 -1
  111. package/dist/libs/tinymce/plugins/visualchars/plugin.js +9 -6
  112. package/dist/libs/tinymce/plugins/visualchars/plugin.min.js +2 -2
  113. package/dist/libs/tinymce/plugins/wordcount/plugin.js +6 -5
  114. package/dist/libs/tinymce/plugins/wordcount/plugin.min.js +2 -2
  115. package/dist/libs/tinymce/skins/ui/oxide/content.css +28 -0
  116. package/dist/libs/tinymce/skins/ui/oxide/content.inline.css +28 -0
  117. package/dist/libs/tinymce/skins/ui/oxide/content.inline.min.css +1 -1
  118. package/dist/libs/tinymce/skins/ui/oxide/content.min.css +1 -1
  119. package/dist/libs/tinymce/skins/ui/oxide/skin.css +39 -4
  120. package/dist/libs/tinymce/skins/ui/oxide/skin.min.css +1 -1
  121. package/dist/libs/tinymce/skins/ui/oxide-dark/content.css +28 -0
  122. package/dist/libs/tinymce/skins/ui/oxide-dark/content.inline.css +28 -0
  123. package/dist/libs/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -1
  124. package/dist/libs/tinymce/skins/ui/oxide-dark/content.min.css +1 -1
  125. package/dist/libs/tinymce/skins/ui/oxide-dark/skin.css +39 -4
  126. package/dist/libs/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  127. package/dist/libs/tinymce/skins/ui/tinymce-5/content.css +28 -0
  128. package/dist/libs/tinymce/skins/ui/tinymce-5/content.inline.css +28 -0
  129. package/dist/libs/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -1
  130. package/dist/libs/tinymce/skins/ui/tinymce-5/content.min.css +1 -1
  131. package/dist/libs/tinymce/skins/ui/tinymce-5/skin.css +45 -4
  132. package/dist/libs/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
  133. package/dist/libs/tinymce/skins/ui/tinymce-5-dark/content.css +28 -0
  134. package/dist/libs/tinymce/skins/ui/tinymce-5-dark/content.inline.css +28 -0
  135. package/dist/libs/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -1
  136. package/dist/libs/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -1
  137. package/dist/libs/tinymce/skins/ui/tinymce-5-dark/skin.css +44 -3
  138. package/dist/libs/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
  139. package/dist/libs/tinymce/themes/silver/theme.js +2494 -1999
  140. package/dist/libs/tinymce/themes/silver/theme.min.js +2 -2
  141. package/dist/libs/tinymce/tinymce.d.ts +345 -169
  142. package/dist/libs/tinymce/tinymce.js +2988 -2392
  143. package/dist/libs/tinymce/tinymce.min.js +2 -2
  144. package/dist/libs/tom-select/dist/js/plugins/caret_position.js +164 -160
  145. package/dist/libs/tom-select/dist/js/plugins/caret_position.js.map +1 -1
  146. package/dist/libs/tom-select/dist/js/plugins/change_listener.js +1 -1
  147. package/dist/libs/tom-select/dist/js/plugins/change_listener.js.map +1 -1
  148. package/dist/libs/tom-select/dist/js/plugins/checkbox_options.js +12 -7
  149. package/dist/libs/tom-select/dist/js/plugins/checkbox_options.js.map +1 -1
  150. package/dist/libs/tom-select/dist/js/plugins/clear_button.js +94 -89
  151. package/dist/libs/tom-select/dist/js/plugins/clear_button.js.map +1 -1
  152. package/dist/libs/tom-select/dist/js/plugins/drag_drop.js +1 -1
  153. package/dist/libs/tom-select/dist/js/plugins/drag_drop.js.map +1 -1
  154. package/dist/libs/tom-select/dist/js/plugins/dropdown_header.js +121 -116
  155. package/dist/libs/tom-select/dist/js/plugins/dropdown_header.js.map +1 -1
  156. package/dist/libs/tom-select/dist/js/plugins/dropdown_input.js +234 -230
  157. package/dist/libs/tom-select/dist/js/plugins/dropdown_input.js.map +1 -1
  158. package/dist/libs/tom-select/dist/js/plugins/input_autogrow.js +1 -1
  159. package/dist/libs/tom-select/dist/js/plugins/input_autogrow.js.map +1 -1
  160. package/dist/libs/tom-select/dist/js/plugins/no_active_items.js +1 -1
  161. package/dist/libs/tom-select/dist/js/plugins/no_active_items.js.map +1 -1
  162. package/dist/libs/tom-select/dist/js/plugins/no_backspace_delete.js +1 -1
  163. package/dist/libs/tom-select/dist/js/plugins/no_backspace_delete.js.map +1 -1
  164. package/dist/libs/tom-select/dist/js/plugins/optgroup_columns.js +112 -107
  165. package/dist/libs/tom-select/dist/js/plugins/optgroup_columns.js.map +1 -1
  166. package/dist/libs/tom-select/dist/js/plugins/remove_button.js +149 -144
  167. package/dist/libs/tom-select/dist/js/plugins/remove_button.js.map +1 -1
  168. package/dist/libs/tom-select/dist/js/plugins/restore_on_backspace.js +1 -1
  169. package/dist/libs/tom-select/dist/js/plugins/restore_on_backspace.js.map +1 -1
  170. package/dist/libs/tom-select/dist/js/plugins/virtual_scroll.js +277 -269
  171. package/dist/libs/tom-select/dist/js/plugins/virtual_scroll.js.map +1 -1
  172. package/dist/libs/tom-select/dist/js/tom-select.base.js +756 -272
  173. package/dist/libs/tom-select/dist/js/tom-select.base.js.map +1 -1
  174. package/dist/libs/tom-select/dist/js/tom-select.base.min.js +329 -272
  175. package/dist/libs/tom-select/dist/js/tom-select.base.min.js.map +1 -1
  176. package/dist/libs/tom-select/dist/js/tom-select.complete.js +761 -273
  177. package/dist/libs/tom-select/dist/js/tom-select.complete.js.map +1 -1
  178. package/dist/libs/tom-select/dist/js/tom-select.complete.min.js +268 -209
  179. package/dist/libs/tom-select/dist/js/tom-select.complete.min.js.map +1 -1
  180. package/dist/libs/tom-select/dist/js/tom-select.popular.js +753 -269
  181. package/dist/libs/tom-select/dist/js/tom-select.popular.js.map +1 -1
  182. package/dist/libs/tom-select/dist/js/tom-select.popular.min.js +348 -291
  183. package/dist/libs/tom-select/dist/js/tom-select.popular.min.js.map +1 -1
  184. package/package.json +78 -34
  185. package/src/js/demo-theme.js +25 -0
  186. package/src/js/demo.js +0 -17
  187. package/src/js/src/dropdown.js +5 -2
  188. package/src/js/src/tabler.js +17 -0
  189. package/src/js/tabler.js +3 -1
  190. package/src/scss/_core.scss +2 -0
  191. package/src/scss/_mixins-override.scss +26 -26
  192. package/src/scss/_utilities.scss +2 -4
  193. package/src/scss/_variables.scss +311 -168
  194. package/src/scss/demo/_examples.scss +2 -2
  195. package/src/scss/demo/_highlight.scss +14 -278
  196. package/src/scss/demo.scss +4 -4
  197. package/src/scss/fonts/_webfonts.scss +0 -50
  198. package/src/scss/layout/_core.scss +2 -23
  199. package/src/scss/layout/_dark.scss +27 -38
  200. package/src/scss/layout/_footer.scss +2 -2
  201. package/src/scss/layout/_navbar.scss +23 -19
  202. package/src/scss/layout/_page.scss +9 -7
  203. package/src/scss/layout/_root.scss +48 -0
  204. package/src/scss/mixins/_functions.scss +2 -2
  205. package/src/scss/mixins/_mixins.scss +10 -8
  206. package/src/scss/ui/_accordion.scss +1 -1
  207. package/src/scss/ui/_alerts.scss +3 -3
  208. package/src/scss/ui/_avatars.scss +7 -7
  209. package/src/scss/ui/_badges.scss +3 -3
  210. package/src/scss/ui/_buttons.scss +35 -22
  211. package/src/scss/ui/_calendars.scss +10 -10
  212. package/src/scss/ui/_cards.scss +45 -63
  213. package/src/scss/ui/_carousel.scss +5 -5
  214. package/src/scss/ui/_chips.scss +0 -0
  215. package/src/scss/ui/_dropdowns.scss +2 -1
  216. package/src/scss/ui/_empty.scss +3 -3
  217. package/src/scss/ui/_flags.scss +2 -2
  218. package/src/scss/ui/_forms.scss +8 -8
  219. package/src/scss/ui/_grid.scss +8 -9
  220. package/src/scss/ui/_icons.scss +64 -4
  221. package/src/scss/ui/_legend.scss +8 -4
  222. package/src/scss/ui/_lists.scss +16 -13
  223. package/src/scss/ui/_markdown.scss +2 -3
  224. package/src/scss/ui/_modals.scss +1 -1
  225. package/src/scss/ui/_nav.scss +9 -9
  226. package/src/scss/ui/_offcanvas.scss +2 -6
  227. package/src/scss/ui/_pagination.scss +10 -6
  228. package/src/scss/ui/_placeholder.scss +1 -1
  229. package/src/scss/ui/_progress.scss +45 -6
  230. package/src/scss/ui/_ribbons.scss +17 -12
  231. package/src/scss/ui/_status.scss +3 -3
  232. package/src/scss/ui/_steps.scss +4 -4
  233. package/src/scss/ui/_tables.scss +27 -6
  234. package/src/scss/ui/_toasts.scss +1 -2
  235. package/src/scss/ui/_tracking.scss +29 -0
  236. package/src/scss/ui/_type.scss +43 -40
  237. package/src/scss/ui/forms/_form-check.scss +26 -1
  238. package/src/scss/ui/forms/_form-colorinput.scss +2 -2
  239. package/src/scss/ui/forms/_form-icon.scss +1 -1
  240. package/src/scss/ui/forms/_form-imagecheck.scss +14 -6
  241. package/src/scss/ui/forms/_form-selectgroup.scss +8 -8
  242. package/src/scss/ui/typo/_hr.scss +2 -3
  243. package/src/scss/utils/_colors.scss +17 -6
  244. package/src/scss/vendor/_apexcharts.scss +26 -0
  245. package/src/scss/vendor/_dropzone.scss +1 -1
  246. package/src/scss/vendor/_jsvectormap.scss +7 -7
  247. package/src/scss/vendor/_litepicker.scss +14 -13
  248. package/src/scss/vendor/_plyr.scss +1 -1
  249. package/src/scss/vendor/_tinymce.scss +14 -3
  250. package/src/scss/vendor/_tom-select.scss +2 -0
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * Tabler v1.0.0-beta11 (https://tabler.io)
3
- * @version 1.0.0-beta11
2
+ * Tabler v1.0.0-beta13 (https://tabler.io)
3
+ * @version 1.0.0-beta13
4
4
  * @link https://tabler.io
5
5
  * Copyright 2018-2022 The Tabler Authors
6
6
  * Copyright 2018-2022 codecalm.net Paweł Kuna
@@ -75,13 +75,13 @@ function _inherits(subClass, superClass) {
75
75
  if (superClass) _setPrototypeOf(subClass, superClass);
76
76
  }
77
77
  function _getPrototypeOf(o) {
78
- _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
78
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
79
79
  return o.__proto__ || Object.getPrototypeOf(o);
80
80
  };
81
81
  return _getPrototypeOf(o);
82
82
  }
83
83
  function _setPrototypeOf(o, p) {
84
- _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
84
+ _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
85
85
  o.__proto__ = p;
86
86
  return o;
87
87
  };
@@ -162,7 +162,7 @@ function _superPropBase(object, property) {
162
162
  }
163
163
  function _get() {
164
164
  if (typeof Reflect !== "undefined" && Reflect.get) {
165
- _get = Reflect.get;
165
+ _get = Reflect.get.bind();
166
166
  } else {
167
167
  _get = function _get(target, property, receiver) {
168
168
  var base = _superPropBase(target, property);
@@ -217,9 +217,18 @@ function _set(target, property, value, receiver, isStrict) {
217
217
  function _slicedToArray(arr, i) {
218
218
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
219
219
  }
220
+ function _toConsumableArray(arr) {
221
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
222
+ }
223
+ function _arrayWithoutHoles(arr) {
224
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
225
+ }
220
226
  function _arrayWithHoles(arr) {
221
227
  if (Array.isArray(arr)) return arr;
222
228
  }
229
+ function _iterableToArray(iter) {
230
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
231
+ }
223
232
  function _iterableToArrayLimit(arr, i) {
224
233
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
225
234
  if (_i == null) return;
@@ -257,6 +266,9 @@ function _arrayLikeToArray(arr, len) {
257
266
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
258
267
  return arr2;
259
268
  }
269
+ function _nonIterableSpread() {
270
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
271
+ }
260
272
  function _nonIterableRest() {
261
273
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
262
274
  }
@@ -657,7 +669,7 @@ var Masked = function () {
657
669
  if (!isString(str)) throw new Error('value should be string');
658
670
  var details = new ChangeDetails();
659
671
  var checkTail = isString(tail) ? new ContinuousTailDetails(String(tail)) : tail;
660
- if (flags && flags.tail) flags._beforeTailState = this.state;
672
+ if (flags !== null && flags !== void 0 && flags.tail) flags._beforeTailState = this.state;
661
673
  for (var ci = 0; ci < str.length; ++ci) {
662
674
  details.aggregate(this._appendChar(str[ci], flags, checkTail));
663
675
  }
@@ -732,6 +744,9 @@ var Masked = function () {
732
744
  }, {
733
745
  key: "splice",
734
746
  value: function splice(start, deleteCount, inserted, removeDirection) {
747
+ var flags = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {
748
+ input: true
749
+ };
735
750
  var tailPos = start + deleteCount;
736
751
  var tail = this.extractTail(tailPos);
737
752
  var oldRawValue;
@@ -757,15 +772,19 @@ var Masked = function () {
757
772
  tail.unshift();
758
773
  }
759
774
  }
760
- return details.aggregate(this.append(inserted, {
761
- input: true
762
- }, tail));
775
+ return details.aggregate(this.append(inserted, flags, tail));
763
776
  }
764
777
  }, {
765
778
  key: "maskEquals",
766
779
  value: function maskEquals(mask) {
767
780
  return this.mask === mask;
768
781
  }
782
+ }, {
783
+ key: "typedValueEquals",
784
+ value: function typedValueEquals(value) {
785
+ var tval = this.typedValue;
786
+ return value === tval || Masked.EMPTY_VALUES.includes(value) && Masked.EMPTY_VALUES.includes(tval) || this.doFormat(value) === this.doFormat(this.typedValue);
787
+ }
769
788
  }]);
770
789
  return Masked;
771
790
  }();
@@ -777,6 +796,7 @@ Masked.DEFAULTS = {
777
796
  return v;
778
797
  }
779
798
  };
799
+ Masked.EMPTY_VALUES = [undefined, null, ''];
780
800
  IMask.Masked = Masked;
781
801
 
782
802
  function maskedClass(mask) {
@@ -1031,7 +1051,7 @@ var PatternFixedDefinition = function () {
1031
1051
  var details = new ChangeDetails();
1032
1052
  if (this._value) return details;
1033
1053
  var appended = this.char === ch;
1034
- var isResolved = appended && (this.isUnmasking || flags.input || flags.raw) && !this.eager && !flags.tail;
1054
+ var isResolved = appended && (this.isUnmasking || flags.input || flags.raw) && (!flags.raw || !this.eager) && !flags.tail;
1035
1055
  if (isResolved) details.rawInserted = this.char;
1036
1056
  this._value = details.inserted = this.char;
1037
1057
  this._isRawInput = isResolved && (flags.raw || flags.input);
@@ -1040,7 +1060,9 @@ var PatternFixedDefinition = function () {
1040
1060
  }, {
1041
1061
  key: "_appendEager",
1042
1062
  value: function _appendEager() {
1043
- return this._appendChar(this.char);
1063
+ return this._appendChar(this.char, {
1064
+ tail: true
1065
+ });
1044
1066
  }
1045
1067
  }, {
1046
1068
  key: "_appendPlaceholder",
@@ -1609,11 +1631,11 @@ var MaskedPattern = function (_Masked) {
1609
1631
  var details = new ChangeDetails();
1610
1632
  if (!blockIter) return details;
1611
1633
  for (var bi = blockIter.index;; ++bi) {
1612
- var _flags$_beforeTailSta;
1634
+ var _flags$_beforeTailSta, _flags$_beforeTailSta2;
1613
1635
  var _block = this._blocks[bi];
1614
1636
  if (!_block) break;
1615
1637
  var blockDetails = _block._appendChar(ch, Object.assign({}, flags, {
1616
- _beforeTailState: (_flags$_beforeTailSta = flags._beforeTailState) === null || _flags$_beforeTailSta === void 0 ? void 0 : _flags$_beforeTailSta._blocks[bi]
1638
+ _beforeTailState: (_flags$_beforeTailSta = flags._beforeTailState) === null || _flags$_beforeTailSta === void 0 ? void 0 : (_flags$_beforeTailSta2 = _flags$_beforeTailSta._blocks) === null || _flags$_beforeTailSta2 === void 0 ? void 0 : _flags$_beforeTailSta2[bi]
1617
1639
  }));
1618
1640
  var skip = blockDetails.skip;
1619
1641
  details.aggregate(blockDetails);
@@ -2274,6 +2296,7 @@ var InputMask = function () {
2274
2296
  return this._value;
2275
2297
  },
2276
2298
  set: function set(str) {
2299
+ if (this.value === str) return;
2277
2300
  this.masked.value = str;
2278
2301
  this.updateControl();
2279
2302
  this.alignCursor();
@@ -2284,6 +2307,7 @@ var InputMask = function () {
2284
2307
  return this._unmaskedValue;
2285
2308
  },
2286
2309
  set: function set(str) {
2310
+ if (this.unmaskedValue === str) return;
2287
2311
  this.masked.unmaskedValue = str;
2288
2312
  this.updateControl();
2289
2313
  this.alignCursor();
@@ -2294,6 +2318,7 @@ var InputMask = function () {
2294
2318
  return this.masked.typedValue;
2295
2319
  },
2296
2320
  set: function set(val) {
2321
+ if (this.masked.typedValueEquals(val)) return;
2297
2322
  this.masked.typedValue = val;
2298
2323
  this.updateControl();
2299
2324
  this.alignCursor();
@@ -2455,7 +2480,10 @@ var InputMask = function () {
2455
2480
  this.el.value, this.cursorPos,
2456
2481
  this.value, this._selection);
2457
2482
  var oldRawValue = this.masked.rawInputValue;
2458
- var offset = this.masked.splice(details.startChangePos, details.removed.length, details.inserted, details.removeDirection).offset;
2483
+ var offset = this.masked.splice(details.startChangePos, details.removed.length, details.inserted, details.removeDirection, {
2484
+ input: true,
2485
+ raw: true
2486
+ }).offset;
2459
2487
  var removeDirection = oldRawValue === this.masked.rawInputValue ? details.removeDirection : DIRECTION.NONE;
2460
2488
  var cursorPos = this.masked.nearestInputPos(details.startChangePos + offset, removeDirection);
2461
2489
  if (removeDirection !== DIRECTION.NONE) cursorPos = this.masked.nearestInputPos(cursorPos, DIRECTION.NONE);
@@ -2779,6 +2807,11 @@ var MaskedNumber = function (_Masked) {
2779
2807
  get: function get() {
2780
2808
  return this.signed || this.min != null && this.min < 0 || this.max != null && this.max < 0;
2781
2809
  }
2810
+ }, {
2811
+ key: "typedValueEquals",
2812
+ value: function typedValueEquals(value) {
2813
+ return (_get(_getPrototypeOf(MaskedNumber.prototype), "typedValueEquals", this).call(this, value) || MaskedNumber.EMPTY_VALUES.includes(value) && MaskedNumber.EMPTY_VALUES.includes(this.typedValue)) && !(value === 0 && this.value === '');
2814
+ }
2782
2815
  }]);
2783
2816
  return MaskedNumber;
2784
2817
  }(Masked);
@@ -2791,6 +2824,7 @@ MaskedNumber.DEFAULTS = {
2791
2824
  normalizeZeros: true,
2792
2825
  padFractionalZeros: false
2793
2826
  };
2827
+ MaskedNumber.EMPTY_VALUES = [].concat(_toConsumableArray(Masked.EMPTY_VALUES), [0]);
2794
2828
  IMask.MaskedNumber = MaskedNumber;
2795
2829
 
2796
2830
  var MaskedFunction = function (_Masked) {
@@ -2839,7 +2873,7 @@ var MaskedDynamic = function (_Masked) {
2839
2873
  var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2840
2874
  var details = this._applyDispatch(ch, flags);
2841
2875
  if (this.currentMask) {
2842
- details.aggregate(this.currentMask._appendChar(ch, flags));
2876
+ details.aggregate(this.currentMask._appendChar(ch, this.currentMaskFlags(flags)));
2843
2877
  }
2844
2878
  return details;
2845
2879
  }
@@ -2855,7 +2889,7 @@ var MaskedDynamic = function (_Masked) {
2855
2889
  var tailValue = inputValue.slice(insertValue.length);
2856
2890
  var prevMask = this.currentMask;
2857
2891
  var details = new ChangeDetails();
2858
- var prevMaskState = prevMask && prevMask.state;
2892
+ var prevMaskState = prevMask === null || prevMask === void 0 ? void 0 : prevMask.state;
2859
2893
  this.currentMask = this.doDispatch(appended, Object.assign({}, flags));
2860
2894
  if (this.currentMask) {
2861
2895
  if (this.currentMask !== prevMask) {
@@ -2896,6 +2930,14 @@ var MaskedDynamic = function (_Masked) {
2896
2930
  }
2897
2931
  return details;
2898
2932
  }
2933
+ }, {
2934
+ key: "currentMaskFlags",
2935
+ value: function currentMaskFlags(flags) {
2936
+ var _flags$_beforeTailSta, _flags$_beforeTailSta2;
2937
+ return Object.assign({}, flags, {
2938
+ _beforeTailState: ((_flags$_beforeTailSta = flags._beforeTailState) === null || _flags$_beforeTailSta === void 0 ? void 0 : _flags$_beforeTailSta.currentMaskRef) === this.currentMask && ((_flags$_beforeTailSta2 = flags._beforeTailState) === null || _flags$_beforeTailSta2 === void 0 ? void 0 : _flags$_beforeTailSta2.currentMask) || flags._beforeTailState
2939
+ });
2940
+ }
2899
2941
  }, {
2900
2942
  key: "doDispatch",
2901
2943
  value: function doDispatch(appended) {
@@ -2904,18 +2946,32 @@ var MaskedDynamic = function (_Masked) {
2904
2946
  }
2905
2947
  }, {
2906
2948
  key: "doValidate",
2907
- value: function doValidate() {
2908
- var _get2, _this$currentMask;
2909
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2910
- args[_key] = arguments[_key];
2949
+ value: function doValidate(flags) {
2950
+ return _get(_getPrototypeOf(MaskedDynamic.prototype), "doValidate", this).call(this, flags) && (!this.currentMask || this.currentMask.doValidate(this.currentMaskFlags(flags)));
2951
+ }
2952
+ }, {
2953
+ key: "doPrepare",
2954
+ value: function doPrepare(str) {
2955
+ var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2956
+ var _normalizePrepare = normalizePrepare(_get(_getPrototypeOf(MaskedDynamic.prototype), "doPrepare", this).call(this, str, flags)),
2957
+ _normalizePrepare2 = _slicedToArray(_normalizePrepare, 2),
2958
+ s = _normalizePrepare2[0],
2959
+ details = _normalizePrepare2[1];
2960
+ if (this.currentMask) {
2961
+ var currentDetails;
2962
+ var _normalizePrepare3 = normalizePrepare(_get(_getPrototypeOf(MaskedDynamic.prototype), "doPrepare", this).call(this, s, this.currentMaskFlags(flags)));
2963
+ var _normalizePrepare4 = _slicedToArray(_normalizePrepare3, 2);
2964
+ s = _normalizePrepare4[0];
2965
+ currentDetails = _normalizePrepare4[1];
2966
+ details = details.aggregate(currentDetails);
2911
2967
  }
2912
- return (_get2 = _get(_getPrototypeOf(MaskedDynamic.prototype), "doValidate", this)).call.apply(_get2, [this].concat(args)) && (!this.currentMask || (_this$currentMask = this.currentMask).doValidate.apply(_this$currentMask, args));
2968
+ return [s, details];
2913
2969
  }
2914
2970
  }, {
2915
2971
  key: "reset",
2916
2972
  value: function reset() {
2917
- var _this$currentMask2;
2918
- (_this$currentMask2 = this.currentMask) === null || _this$currentMask2 === void 0 ? void 0 : _this$currentMask2.reset();
2973
+ var _this$currentMask;
2974
+ (_this$currentMask = this.currentMask) === null || _this$currentMask === void 0 ? void 0 : _this$currentMask.reset();
2919
2975
  this.compiledMasks.forEach(function (m) {
2920
2976
  return m.reset();
2921
2977
  });
@@ -2953,22 +3009,22 @@ var MaskedDynamic = function (_Masked) {
2953
3009
  }, {
2954
3010
  key: "isComplete",
2955
3011
  get: function get() {
2956
- var _this$currentMask3;
2957
- return Boolean((_this$currentMask3 = this.currentMask) === null || _this$currentMask3 === void 0 ? void 0 : _this$currentMask3.isComplete);
3012
+ var _this$currentMask2;
3013
+ return Boolean((_this$currentMask2 = this.currentMask) === null || _this$currentMask2 === void 0 ? void 0 : _this$currentMask2.isComplete);
2958
3014
  }
2959
3015
  }, {
2960
3016
  key: "isFilled",
2961
3017
  get: function get() {
2962
- var _this$currentMask4;
2963
- return Boolean((_this$currentMask4 = this.currentMask) === null || _this$currentMask4 === void 0 ? void 0 : _this$currentMask4.isFilled);
3018
+ var _this$currentMask3;
3019
+ return Boolean((_this$currentMask3 = this.currentMask) === null || _this$currentMask3 === void 0 ? void 0 : _this$currentMask3.isFilled);
2964
3020
  }
2965
3021
  }, {
2966
3022
  key: "remove",
2967
3023
  value: function remove() {
2968
3024
  var details = new ChangeDetails();
2969
3025
  if (this.currentMask) {
2970
- var _this$currentMask5;
2971
- details.aggregate((_this$currentMask5 = this.currentMask).remove.apply(_this$currentMask5, arguments))
3026
+ var _this$currentMask4;
3027
+ details.aggregate((_this$currentMask4 = this.currentMask).remove.apply(_this$currentMask4, arguments))
2972
3028
  .aggregate(this._applyDispatch());
2973
3029
  }
2974
3030
  return details;
@@ -2976,13 +3032,14 @@ var MaskedDynamic = function (_Masked) {
2976
3032
  }, {
2977
3033
  key: "state",
2978
3034
  get: function get() {
3035
+ var _this$currentMask5;
2979
3036
  return Object.assign({}, _get(_getPrototypeOf(MaskedDynamic.prototype), "state", this), {
2980
3037
  _rawInputValue: this.rawInputValue,
2981
3038
  compiledMasks: this.compiledMasks.map(function (m) {
2982
3039
  return m.state;
2983
3040
  }),
2984
3041
  currentMaskRef: this.currentMask,
2985
- currentMask: this.currentMask && this.currentMask.state
3042
+ currentMask: (_this$currentMask5 = this.currentMask) === null || _this$currentMask5 === void 0 ? void 0 : _this$currentMask5.state
2986
3043
  });
2987
3044
  },
2988
3045
  set: function set(state) {
@@ -3008,11 +3065,11 @@ var MaskedDynamic = function (_Masked) {
3008
3065
  }, {
3009
3066
  key: "extractTail",
3010
3067
  value: function extractTail() {
3011
- var _this$currentMask7, _get3;
3012
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
3013
- args[_key2] = arguments[_key2];
3068
+ var _this$currentMask7, _get2;
3069
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
3070
+ args[_key] = arguments[_key];
3014
3071
  }
3015
- return this.currentMask ? (_this$currentMask7 = this.currentMask).extractTail.apply(_this$currentMask7, args) : (_get3 = _get(_getPrototypeOf(MaskedDynamic.prototype), "extractTail", this)).call.apply(_get3, [this].concat(args));
3072
+ return this.currentMask ? (_this$currentMask7 = this.currentMask).extractTail.apply(_this$currentMask7, args) : (_get2 = _get(_getPrototypeOf(MaskedDynamic.prototype), "extractTail", this)).call.apply(_get2, [this].concat(args));
3016
3073
  }
3017
3074
  }, {
3018
3075
  key: "doCommit",
@@ -3023,11 +3080,11 @@ var MaskedDynamic = function (_Masked) {
3023
3080
  }, {
3024
3081
  key: "nearestInputPos",
3025
3082
  value: function nearestInputPos() {
3026
- var _this$currentMask8, _get4;
3027
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
3028
- args[_key3] = arguments[_key3];
3083
+ var _this$currentMask8, _get3;
3084
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
3085
+ args[_key2] = arguments[_key2];
3029
3086
  }
3030
- return this.currentMask ? (_this$currentMask8 = this.currentMask).nearestInputPos.apply(_this$currentMask8, args) : (_get4 = _get(_getPrototypeOf(MaskedDynamic.prototype), "nearestInputPos", this)).call.apply(_get4, [this].concat(args));
3087
+ return this.currentMask ? (_this$currentMask8 = this.currentMask).nearestInputPos.apply(_this$currentMask8, args) : (_get3 = _get(_getPrototypeOf(MaskedDynamic.prototype), "nearestInputPos", this)).call.apply(_get3, [this].concat(args));
3031
3088
  }
3032
3089
  }, {
3033
3090
  key: "overwrite",
@@ -3053,6 +3110,12 @@ var MaskedDynamic = function (_Masked) {
3053
3110
  return m.maskEquals((_mask$mi = mask[mi]) === null || _mask$mi === void 0 ? void 0 : _mask$mi.mask);
3054
3111
  });
3055
3112
  }
3113
+ }, {
3114
+ key: "typedValueEquals",
3115
+ value: function typedValueEquals(value) {
3116
+ var _this$currentMask9;
3117
+ return Boolean((_this$currentMask9 = this.currentMask) === null || _this$currentMask9 === void 0 ? void 0 : _this$currentMask9.typedValueEquals(value));
3118
+ }
3056
3119
  }]);
3057
3120
  return MaskedDynamic;
3058
3121
  }(Masked);
@@ -3065,7 +3128,7 @@ MaskedDynamic.DEFAULTS = {
3065
3128
  m.append(inputValue, {
3066
3129
  raw: true
3067
3130
  });
3068
- m.append(appended, flags);
3131
+ m.append(appended, masked.currentMaskFlags(flags));
3069
3132
  var weight = m.rawInputValue.length;
3070
3133
  return {
3071
3134
  weight: weight,
@@ -3253,32 +3316,50 @@ var max = Math.max;
3253
3316
  var min = Math.min;
3254
3317
  var round = Math.round;
3255
3318
 
3256
- function getBoundingClientRect(element, includeScale) {
3319
+ function getUAString() {
3320
+ var uaData = navigator.userAgentData;
3321
+ if (uaData != null && uaData.brands) {
3322
+ return uaData.brands.map(function (item) {
3323
+ return item.brand + "/" + item.version;
3324
+ }).join(' ');
3325
+ }
3326
+ return navigator.userAgent;
3327
+ }
3328
+
3329
+ function isLayoutViewport() {
3330
+ return !/^((?!chrome|android).)*safari/i.test(getUAString());
3331
+ }
3332
+
3333
+ function getBoundingClientRect(element, includeScale, isFixedStrategy) {
3257
3334
  if (includeScale === void 0) {
3258
3335
  includeScale = false;
3259
3336
  }
3260
- var rect = element.getBoundingClientRect();
3337
+ if (isFixedStrategy === void 0) {
3338
+ isFixedStrategy = false;
3339
+ }
3340
+ var clientRect = element.getBoundingClientRect();
3261
3341
  var scaleX = 1;
3262
3342
  var scaleY = 1;
3263
- if (isHTMLElement(element) && includeScale) {
3264
- var offsetHeight = element.offsetHeight;
3265
- var offsetWidth = element.offsetWidth;
3266
- if (offsetWidth > 0) {
3267
- scaleX = round(rect.width) / offsetWidth || 1;
3268
- }
3269
- if (offsetHeight > 0) {
3270
- scaleY = round(rect.height) / offsetHeight || 1;
3271
- }
3272
- }
3343
+ if (includeScale && isHTMLElement(element)) {
3344
+ scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;
3345
+ scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;
3346
+ }
3347
+ var _ref = isElement$1(element) ? getWindow(element) : window,
3348
+ visualViewport = _ref.visualViewport;
3349
+ var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;
3350
+ var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;
3351
+ var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;
3352
+ var width = clientRect.width / scaleX;
3353
+ var height = clientRect.height / scaleY;
3273
3354
  return {
3274
- width: rect.width / scaleX,
3275
- height: rect.height / scaleY,
3276
- top: rect.top / scaleY,
3277
- right: rect.right / scaleX,
3278
- bottom: rect.bottom / scaleY,
3279
- left: rect.left / scaleX,
3280
- x: rect.left / scaleX,
3281
- y: rect.top / scaleY
3355
+ width: width,
3356
+ height: height,
3357
+ top: y,
3358
+ right: x + width,
3359
+ bottom: y + height,
3360
+ left: x,
3361
+ x: x,
3362
+ y: y
3282
3363
  };
3283
3364
  }
3284
3365
 
@@ -3350,8 +3431,8 @@ function getTrueOffsetParent(element) {
3350
3431
  return element.offsetParent;
3351
3432
  }
3352
3433
  function getContainingBlock(element) {
3353
- var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;
3354
- var isIE = navigator.userAgent.indexOf('Trident') !== -1;
3434
+ var isFirefox = /firefox/i.test(getUAString());
3435
+ var isIE = /Trident/i.test(getUAString());
3355
3436
  if (isIE && isHTMLElement(element)) {
3356
3437
  var elementCss = getComputedStyle$1(element);
3357
3438
  if (elementCss.position === 'fixed') {
@@ -3698,7 +3779,7 @@ function getWindowScrollBarX(element) {
3698
3779
  return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;
3699
3780
  }
3700
3781
 
3701
- function getViewportRect(element) {
3782
+ function getViewportRect(element, strategy) {
3702
3783
  var win = getWindow(element);
3703
3784
  var html = getDocumentElement(element);
3704
3785
  var visualViewport = win.visualViewport;
@@ -3709,7 +3790,8 @@ function getViewportRect(element) {
3709
3790
  if (visualViewport) {
3710
3791
  width = visualViewport.width;
3711
3792
  height = visualViewport.height;
3712
- if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {
3793
+ var layoutViewport = isLayoutViewport();
3794
+ if (layoutViewport || !layoutViewport && strategy === 'fixed') {
3713
3795
  x = visualViewport.offsetLeft;
3714
3796
  y = visualViewport.offsetTop;
3715
3797
  }
@@ -3783,8 +3865,8 @@ function rectToClientRect(rect) {
3783
3865
  });
3784
3866
  }
3785
3867
 
3786
- function getInnerBoundingClientRect(element) {
3787
- var rect = getBoundingClientRect(element);
3868
+ function getInnerBoundingClientRect(element, strategy) {
3869
+ var rect = getBoundingClientRect(element, false, strategy === 'fixed');
3788
3870
  rect.top = rect.top + element.clientTop;
3789
3871
  rect.left = rect.left + element.clientLeft;
3790
3872
  rect.bottom = rect.top + element.clientHeight;
@@ -3795,8 +3877,8 @@ function getInnerBoundingClientRect(element) {
3795
3877
  rect.y = rect.top;
3796
3878
  return rect;
3797
3879
  }
3798
- function getClientRectFromMixedType(element, clippingParent) {
3799
- return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isElement$1(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
3880
+ function getClientRectFromMixedType(element, clippingParent, strategy) {
3881
+ return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement$1(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
3800
3882
  }
3801
3883
  function getClippingParents(element) {
3802
3884
  var clippingParents = listScrollParents(getParentNode(element));
@@ -3809,18 +3891,18 @@ function getClippingParents(element) {
3809
3891
  return isElement$1(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';
3810
3892
  });
3811
3893
  }
3812
- function getClippingRect(element, boundary, rootBoundary) {
3894
+ function getClippingRect(element, boundary, rootBoundary, strategy) {
3813
3895
  var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);
3814
3896
  var clippingParents = [].concat(mainClippingParents, [rootBoundary]);
3815
3897
  var firstClippingParent = clippingParents[0];
3816
3898
  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {
3817
- var rect = getClientRectFromMixedType(element, clippingParent);
3899
+ var rect = getClientRectFromMixedType(element, clippingParent, strategy);
3818
3900
  accRect.top = max(rect.top, accRect.top);
3819
3901
  accRect.right = min(rect.right, accRect.right);
3820
3902
  accRect.bottom = min(rect.bottom, accRect.bottom);
3821
3903
  accRect.left = max(rect.left, accRect.left);
3822
3904
  return accRect;
3823
- }, getClientRectFromMixedType(element, firstClippingParent));
3905
+ }, getClientRectFromMixedType(element, firstClippingParent, strategy));
3824
3906
  clippingRect.width = clippingRect.right - clippingRect.left;
3825
3907
  clippingRect.height = clippingRect.bottom - clippingRect.top;
3826
3908
  clippingRect.x = clippingRect.left;
@@ -3890,6 +3972,8 @@ function detectOverflow(state, options) {
3890
3972
  var _options = options,
3891
3973
  _options$placement = _options.placement,
3892
3974
  placement = _options$placement === void 0 ? state.placement : _options$placement,
3975
+ _options$strategy = _options.strategy,
3976
+ strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,
3893
3977
  _options$boundary = _options.boundary,
3894
3978
  boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,
3895
3979
  _options$rootBoundary = _options.rootBoundary,
@@ -3904,7 +3988,7 @@ function detectOverflow(state, options) {
3904
3988
  var altContext = elementContext === popper ? reference : popper;
3905
3989
  var popperRect = state.rects.popper;
3906
3990
  var element = state.elements[altBoundary ? altContext : elementContext];
3907
- var clippingClientRect = getClippingRect(isElement$1(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);
3991
+ var clippingClientRect = getClippingRect(isElement$1(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);
3908
3992
  var referenceClientRect = getBoundingClientRect(state.elements.reference);
3909
3993
  var popperOffsets = computeOffsets({
3910
3994
  reference: referenceClientRect,
@@ -4339,7 +4423,7 @@ function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
4339
4423
  var isOffsetParentAnElement = isHTMLElement(offsetParent);
4340
4424
  var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);
4341
4425
  var documentElement = getDocumentElement(offsetParent);
4342
- var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);
4426
+ var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);
4343
4427
  var scroll = {
4344
4428
  scrollLeft: 0,
4345
4429
  scrollTop: 0
@@ -4632,7 +4716,7 @@ var Popper = /*#__PURE__*/Object.freeze({
4632
4716
  });
4633
4717
 
4634
4718
  /*!
4635
- * Bootstrap v5.2.0 (https://getbootstrap.com/)
4719
+ * Bootstrap v5.2.2 (https://getbootstrap.com/)
4636
4720
  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4637
4721
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
4638
4722
  */
@@ -5163,7 +5247,7 @@ class Config {
5163
5247
  }
5164
5248
  }
5165
5249
  }
5166
- const VERSION = '5.2.0';
5250
+ const VERSION = '5.2.2';
5167
5251
  class BaseComponent extends Config {
5168
5252
  constructor(element, config) {
5169
5253
  super();
@@ -6007,7 +6091,7 @@ class Dropdown extends BaseComponent {
6007
6091
  super(element, config);
6008
6092
  this._popper = null;
6009
6093
  this._parent = this._element.parentNode;
6010
- this._menu = SelectorEngine.findOne(SELECTOR_MENU, this._parent);
6094
+ this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
6011
6095
  this._inNavbar = this._detectNavbar();
6012
6096
  }
6013
6097
  static get Default() {
@@ -6231,7 +6315,7 @@ class Dropdown extends BaseComponent {
6231
6315
  return;
6232
6316
  }
6233
6317
  event.preventDefault();
6234
- const getToggleButton = SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
6318
+ const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
6235
6319
  const instance = Dropdown.getOrCreateInstance(getToggleButton);
6236
6320
  if (isUpOrDownEvent) {
6237
6321
  event.stopPropagation();
@@ -6510,6 +6594,7 @@ const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$4}`;
6510
6594
  const EVENT_SHOW$4 = `show${EVENT_KEY$4}`;
6511
6595
  const EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;
6512
6596
  const EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;
6597
+ const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;
6513
6598
  const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;
6514
6599
  const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;
6515
6600
  const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;
@@ -6651,16 +6736,18 @@ class Modal extends BaseComponent {
6651
6736
  }
6652
6737
  });
6653
6738
  EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {
6654
- if (event.target !== event.currentTarget) {
6655
- return;
6656
- }
6657
- if (this._config.backdrop === 'static') {
6658
- this._triggerBackdropTransition();
6659
- return;
6660
- }
6661
- if (this._config.backdrop) {
6662
- this.hide();
6663
- }
6739
+ EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {
6740
+ if (this._element !== event.target || this._element !== event2.target) {
6741
+ return;
6742
+ }
6743
+ if (this._config.backdrop === 'static') {
6744
+ this._triggerBackdropTransition();
6745
+ return;
6746
+ }
6747
+ if (this._config.backdrop) {
6748
+ this.hide();
6749
+ }
6750
+ });
6664
6751
  });
6665
6752
  }
6666
6753
  _hideModal() {
@@ -7202,13 +7289,16 @@ class Tooltip extends BaseComponent {
7202
7289
  super(element, config);
7203
7290
  this._isEnabled = true;
7204
7291
  this._timeout = 0;
7205
- this._isHovered = false;
7292
+ this._isHovered = null;
7206
7293
  this._activeTrigger = {};
7207
7294
  this._popper = null;
7208
7295
  this._templateFactory = null;
7209
7296
  this._newContent = null;
7210
7297
  this.tip = null;
7211
7298
  this._setListeners();
7299
+ if (!this._config.selector) {
7300
+ this._fixTitle();
7301
+ }
7212
7302
  }
7213
7303
  static get Default() {
7214
7304
  return Default$3;
@@ -7228,20 +7318,11 @@ class Tooltip extends BaseComponent {
7228
7318
  toggleEnabled() {
7229
7319
  this._isEnabled = !this._isEnabled;
7230
7320
  }
7231
- toggle(event) {
7321
+ toggle() {
7232
7322
  if (!this._isEnabled) {
7233
7323
  return;
7234
7324
  }
7235
- if (event) {
7236
- const context = this._initializeOnDelegatedTarget(event);
7237
- context._activeTrigger.click = !context._activeTrigger.click;
7238
- if (context._isWithActiveTrigger()) {
7239
- context._enter();
7240
- } else {
7241
- context._leave();
7242
- }
7243
- return;
7244
- }
7325
+ this._activeTrigger.click = !this._activeTrigger.click;
7245
7326
  if (this._isShown()) {
7246
7327
  this._leave();
7247
7328
  return;
@@ -7254,6 +7335,9 @@ class Tooltip extends BaseComponent {
7254
7335
  if (this.tip) {
7255
7336
  this.tip.remove();
7256
7337
  }
7338
+ if (this._element.getAttribute('data-bs-original-title')) {
7339
+ this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));
7340
+ }
7257
7341
  this._disposePopper();
7258
7342
  super.dispose();
7259
7343
  }
@@ -7295,12 +7379,11 @@ class Tooltip extends BaseComponent {
7295
7379
  }
7296
7380
  }
7297
7381
  const complete = () => {
7298
- const previousHoverState = this._isHovered;
7299
- this._isHovered = false;
7300
7382
  EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));
7301
- if (previousHoverState) {
7383
+ if (this._isHovered === false) {
7302
7384
  this._leave();
7303
7385
  }
7386
+ this._isHovered = false;
7304
7387
  };
7305
7388
  this._queueCallback(complete, this.tip, this._isAnimated());
7306
7389
  }
@@ -7322,7 +7405,7 @@ class Tooltip extends BaseComponent {
7322
7405
  this._activeTrigger[TRIGGER_CLICK] = false;
7323
7406
  this._activeTrigger[TRIGGER_FOCUS] = false;
7324
7407
  this._activeTrigger[TRIGGER_HOVER] = false;
7325
- this._isHovered = false;
7408
+ this._isHovered = null;
7326
7409
  const complete = () => {
7327
7410
  if (this._isWithActiveTrigger()) {
7328
7411
  return;
@@ -7388,7 +7471,7 @@ class Tooltip extends BaseComponent {
7388
7471
  };
7389
7472
  }
7390
7473
  _getTitle() {
7391
- return this._resolvePossibleFunction(this._config.title) || this._config.originalTitle;
7474
+ return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');
7392
7475
  }
7393
7476
  _initializeOnDelegatedTarget(event) {
7394
7477
  return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());
@@ -7459,7 +7542,10 @@ class Tooltip extends BaseComponent {
7459
7542
  const triggers = this._config.trigger.split(' ');
7460
7543
  for (const trigger of triggers) {
7461
7544
  if (trigger === 'click') {
7462
- EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => this.toggle(event));
7545
+ EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {
7546
+ const context = this._initializeOnDelegatedTarget(event);
7547
+ context.toggle();
7548
+ });
7463
7549
  } else if (trigger !== TRIGGER_MANUAL) {
7464
7550
  const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);
7465
7551
  const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);
@@ -7481,23 +7567,16 @@ class Tooltip extends BaseComponent {
7481
7567
  }
7482
7568
  };
7483
7569
  EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);
7484
- if (this._config.selector) {
7485
- this._config = { ...this._config,
7486
- trigger: 'manual',
7487
- selector: ''
7488
- };
7489
- } else {
7490
- this._fixTitle();
7491
- }
7492
7570
  }
7493
7571
  _fixTitle() {
7494
- const title = this._config.originalTitle;
7572
+ const title = this._element.getAttribute('title');
7495
7573
  if (!title) {
7496
7574
  return;
7497
7575
  }
7498
7576
  if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {
7499
7577
  this._element.setAttribute('aria-label', title);
7500
7578
  }
7579
+ this._element.setAttribute('data-bs-original-title', title);
7501
7580
  this._element.removeAttribute('title');
7502
7581
  }
7503
7582
  _enter() {
@@ -7553,7 +7632,6 @@ class Tooltip extends BaseComponent {
7553
7632
  hide: config.delay
7554
7633
  };
7555
7634
  }
7556
- config.originalTitle = this._element.getAttribute('title') || '';
7557
7635
  if (typeof config.title === 'number') {
7558
7636
  config.title = config.title.toString();
7559
7637
  }
@@ -7569,6 +7647,8 @@ class Tooltip extends BaseComponent {
7569
7647
  config[key] = this._config[key];
7570
7648
  }
7571
7649
  }
7650
+ config.selector = false;
7651
+ config.trigger = 'manual';
7572
7652
  return config;
7573
7653
  }
7574
7654
  _disposePopper() {
@@ -7662,13 +7742,15 @@ const Default$1 = {
7662
7742
  offset: null,
7663
7743
  rootMargin: '0px 0px -25%',
7664
7744
  smoothScroll: false,
7665
- target: null
7745
+ target: null,
7746
+ threshold: [0.1, 0.5, 1]
7666
7747
  };
7667
7748
  const DefaultType$1 = {
7668
7749
  offset: '(number|null)',
7669
7750
  rootMargin: 'string',
7670
7751
  smoothScroll: 'boolean',
7671
- target: 'element'
7752
+ target: 'element',
7753
+ threshold: 'array'
7672
7754
  };
7673
7755
  class ScrollSpy extends BaseComponent {
7674
7756
  constructor(element, config) {
@@ -7711,6 +7793,10 @@ class ScrollSpy extends BaseComponent {
7711
7793
  }
7712
7794
  _configAfterMerge(config) {
7713
7795
  config.target = getElement(config.target) || document.body;
7796
+ config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;
7797
+ if (typeof config.threshold === 'string') {
7798
+ config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));
7799
+ }
7714
7800
  return config;
7715
7801
  }
7716
7802
  _maybeEnableSmoothScroll() {
@@ -7738,8 +7824,8 @@ class ScrollSpy extends BaseComponent {
7738
7824
  _getNewObserver() {
7739
7825
  const options = {
7740
7826
  root: this._rootElement,
7741
- threshold: [0.1, 0.5, 1],
7742
- rootMargin: this._getRootMargin()
7827
+ threshold: this._config.threshold,
7828
+ rootMargin: this._config.rootMargin
7743
7829
  };
7744
7830
  return new IntersectionObserver(entries => this._observerCallback(entries), options);
7745
7831
  }
@@ -7771,9 +7857,6 @@ class ScrollSpy extends BaseComponent {
7771
7857
  }
7772
7858
  }
7773
7859
  }
7774
- _getRootMargin() {
7775
- return this._config.offset ? `${this._config.offset}px 0px -30%` : this._config.rootMargin;
7776
- }
7777
7860
  _initializeTargetsAndObservables() {
7778
7861
  this._targetLinks = new Map();
7779
7862
  this._observableSections = new Map();
@@ -7858,7 +7941,6 @@ const CLASS_NAME_SHOW$1 = 'show';
7858
7941
  const CLASS_DROPDOWN = 'dropdown';
7859
7942
  const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
7860
7943
  const SELECTOR_DROPDOWN_MENU = '.dropdown-menu';
7861
- const SELECTOR_DROPDOWN_ITEM = '.dropdown-item';
7862
7944
  const NOT_SELECTOR_DROPDOWN_TOGGLE = ':not(.dropdown-toggle)';
7863
7945
  const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
7864
7946
  const SELECTOR_OUTER = '.nav-item, .list-group-item';
@@ -7908,7 +7990,6 @@ class Tab extends BaseComponent {
7908
7990
  element.classList.add(CLASS_NAME_SHOW$1);
7909
7991
  return;
7910
7992
  }
7911
- element.focus();
7912
7993
  element.removeAttribute('tabindex');
7913
7994
  element.setAttribute('aria-selected', true);
7914
7995
  this._toggleDropDown(element, true);
@@ -7948,6 +8029,9 @@ class Tab extends BaseComponent {
7948
8029
  const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key);
7949
8030
  const nextActiveElement = getNextActiveElement(this._getChildren().filter(element => !isDisabled(element)), event.target, isNext, true);
7950
8031
  if (nextActiveElement) {
8032
+ nextActiveElement.focus({
8033
+ preventScroll: true
8034
+ });
7951
8035
  Tab.getOrCreateInstance(nextActiveElement).show();
7952
8036
  }
7953
8037
  }
@@ -8000,7 +8084,6 @@ class Tab extends BaseComponent {
8000
8084
  };
8001
8085
  toggle(SELECTOR_DROPDOWN_TOGGLE, CLASS_NAME_ACTIVE);
8002
8086
  toggle(SELECTOR_DROPDOWN_MENU, CLASS_NAME_SHOW$1);
8003
- toggle(SELECTOR_DROPDOWN_ITEM, CLASS_NAME_ACTIVE);
8004
8087
  outerElem.setAttribute('aria-expanded', open);
8005
8088
  }
8006
8089
  _setAttributeIfNotExists(element, attribute, value) {
@@ -8147,12 +8230,16 @@ class Toast extends BaseComponent {
8147
8230
  switch (event.type) {
8148
8231
  case 'mouseover':
8149
8232
  case 'mouseout':
8150
- this._hasMouseInteraction = isInteracting;
8151
- break;
8233
+ {
8234
+ this._hasMouseInteraction = isInteracting;
8235
+ break;
8236
+ }
8152
8237
  case 'focusin':
8153
8238
  case 'focusout':
8154
- this._hasKeyboardInteraction = isInteracting;
8155
- break;
8239
+ {
8240
+ this._hasKeyboardInteraction = isInteracting;
8241
+ break;
8242
+ }
8156
8243
  }
8157
8244
  if (isInteracting) {
8158
8245
  this._clearTimeout();
@@ -8191,7 +8278,10 @@ defineJQueryPlugin(Toast);
8191
8278
 
8192
8279
  var dropdownTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="dropdown"]'));
8193
8280
  dropdownTriggerList.map(function (dropdownTriggerEl) {
8194
- return new Dropdown(dropdownTriggerEl);
8281
+ var options = {
8282
+ boundary: dropdownTriggerEl.getAttribute('data-bs-boundary') === 'viewport' ? document.querySelector('.btn') : 'clippingParents'
8283
+ };
8284
+ return new Dropdown(dropdownTriggerEl, options);
8195
8285
  });
8196
8286
 
8197
8287
  var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));