@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
package/dist/js/tabler.js CHANGED
@@ -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
@@ -80,13 +80,13 @@
80
80
  if (superClass) _setPrototypeOf(subClass, superClass);
81
81
  }
82
82
  function _getPrototypeOf(o) {
83
- _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
83
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
84
84
  return o.__proto__ || Object.getPrototypeOf(o);
85
85
  };
86
86
  return _getPrototypeOf(o);
87
87
  }
88
88
  function _setPrototypeOf(o, p) {
89
- _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
89
+ _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
90
90
  o.__proto__ = p;
91
91
  return o;
92
92
  };
@@ -167,7 +167,7 @@
167
167
  }
168
168
  function _get() {
169
169
  if (typeof Reflect !== "undefined" && Reflect.get) {
170
- _get = Reflect.get;
170
+ _get = Reflect.get.bind();
171
171
  } else {
172
172
  _get = function _get(target, property, receiver) {
173
173
  var base = _superPropBase(target, property);
@@ -222,9 +222,18 @@
222
222
  function _slicedToArray(arr, i) {
223
223
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
224
224
  }
225
+ function _toConsumableArray(arr) {
226
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
227
+ }
228
+ function _arrayWithoutHoles(arr) {
229
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
230
+ }
225
231
  function _arrayWithHoles(arr) {
226
232
  if (Array.isArray(arr)) return arr;
227
233
  }
234
+ function _iterableToArray(iter) {
235
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
236
+ }
228
237
  function _iterableToArrayLimit(arr, i) {
229
238
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
230
239
  if (_i == null) return;
@@ -262,6 +271,9 @@
262
271
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
263
272
  return arr2;
264
273
  }
274
+ function _nonIterableSpread() {
275
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
276
+ }
265
277
  function _nonIterableRest() {
266
278
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
267
279
  }
@@ -662,7 +674,7 @@
662
674
  if (!isString(str)) throw new Error('value should be string');
663
675
  var details = new ChangeDetails();
664
676
  var checkTail = isString(tail) ? new ContinuousTailDetails(String(tail)) : tail;
665
- if (flags && flags.tail) flags._beforeTailState = this.state;
677
+ if (flags !== null && flags !== void 0 && flags.tail) flags._beforeTailState = this.state;
666
678
  for (var ci = 0; ci < str.length; ++ci) {
667
679
  details.aggregate(this._appendChar(str[ci], flags, checkTail));
668
680
  }
@@ -737,6 +749,9 @@
737
749
  }, {
738
750
  key: "splice",
739
751
  value: function splice(start, deleteCount, inserted, removeDirection) {
752
+ var flags = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {
753
+ input: true
754
+ };
740
755
  var tailPos = start + deleteCount;
741
756
  var tail = this.extractTail(tailPos);
742
757
  var oldRawValue;
@@ -762,15 +777,19 @@
762
777
  tail.unshift();
763
778
  }
764
779
  }
765
- return details.aggregate(this.append(inserted, {
766
- input: true
767
- }, tail));
780
+ return details.aggregate(this.append(inserted, flags, tail));
768
781
  }
769
782
  }, {
770
783
  key: "maskEquals",
771
784
  value: function maskEquals(mask) {
772
785
  return this.mask === mask;
773
786
  }
787
+ }, {
788
+ key: "typedValueEquals",
789
+ value: function typedValueEquals(value) {
790
+ var tval = this.typedValue;
791
+ return value === tval || Masked.EMPTY_VALUES.includes(value) && Masked.EMPTY_VALUES.includes(tval) || this.doFormat(value) === this.doFormat(this.typedValue);
792
+ }
774
793
  }]);
775
794
  return Masked;
776
795
  }();
@@ -782,6 +801,7 @@
782
801
  return v;
783
802
  }
784
803
  };
804
+ Masked.EMPTY_VALUES = [undefined, null, ''];
785
805
  IMask.Masked = Masked;
786
806
 
787
807
  function maskedClass(mask) {
@@ -1036,7 +1056,7 @@
1036
1056
  var details = new ChangeDetails();
1037
1057
  if (this._value) return details;
1038
1058
  var appended = this.char === ch;
1039
- var isResolved = appended && (this.isUnmasking || flags.input || flags.raw) && !this.eager && !flags.tail;
1059
+ var isResolved = appended && (this.isUnmasking || flags.input || flags.raw) && (!flags.raw || !this.eager) && !flags.tail;
1040
1060
  if (isResolved) details.rawInserted = this.char;
1041
1061
  this._value = details.inserted = this.char;
1042
1062
  this._isRawInput = isResolved && (flags.raw || flags.input);
@@ -1045,7 +1065,9 @@
1045
1065
  }, {
1046
1066
  key: "_appendEager",
1047
1067
  value: function _appendEager() {
1048
- return this._appendChar(this.char);
1068
+ return this._appendChar(this.char, {
1069
+ tail: true
1070
+ });
1049
1071
  }
1050
1072
  }, {
1051
1073
  key: "_appendPlaceholder",
@@ -1614,11 +1636,11 @@
1614
1636
  var details = new ChangeDetails();
1615
1637
  if (!blockIter) return details;
1616
1638
  for (var bi = blockIter.index;; ++bi) {
1617
- var _flags$_beforeTailSta;
1639
+ var _flags$_beforeTailSta, _flags$_beforeTailSta2;
1618
1640
  var _block = this._blocks[bi];
1619
1641
  if (!_block) break;
1620
1642
  var blockDetails = _block._appendChar(ch, Object.assign({}, flags, {
1621
- _beforeTailState: (_flags$_beforeTailSta = flags._beforeTailState) === null || _flags$_beforeTailSta === void 0 ? void 0 : _flags$_beforeTailSta._blocks[bi]
1643
+ _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]
1622
1644
  }));
1623
1645
  var skip = blockDetails.skip;
1624
1646
  details.aggregate(blockDetails);
@@ -2279,6 +2301,7 @@
2279
2301
  return this._value;
2280
2302
  },
2281
2303
  set: function set(str) {
2304
+ if (this.value === str) return;
2282
2305
  this.masked.value = str;
2283
2306
  this.updateControl();
2284
2307
  this.alignCursor();
@@ -2289,6 +2312,7 @@
2289
2312
  return this._unmaskedValue;
2290
2313
  },
2291
2314
  set: function set(str) {
2315
+ if (this.unmaskedValue === str) return;
2292
2316
  this.masked.unmaskedValue = str;
2293
2317
  this.updateControl();
2294
2318
  this.alignCursor();
@@ -2299,6 +2323,7 @@
2299
2323
  return this.masked.typedValue;
2300
2324
  },
2301
2325
  set: function set(val) {
2326
+ if (this.masked.typedValueEquals(val)) return;
2302
2327
  this.masked.typedValue = val;
2303
2328
  this.updateControl();
2304
2329
  this.alignCursor();
@@ -2460,7 +2485,10 @@
2460
2485
  this.el.value, this.cursorPos,
2461
2486
  this.value, this._selection);
2462
2487
  var oldRawValue = this.masked.rawInputValue;
2463
- var offset = this.masked.splice(details.startChangePos, details.removed.length, details.inserted, details.removeDirection).offset;
2488
+ var offset = this.masked.splice(details.startChangePos, details.removed.length, details.inserted, details.removeDirection, {
2489
+ input: true,
2490
+ raw: true
2491
+ }).offset;
2464
2492
  var removeDirection = oldRawValue === this.masked.rawInputValue ? details.removeDirection : DIRECTION.NONE;
2465
2493
  var cursorPos = this.masked.nearestInputPos(details.startChangePos + offset, removeDirection);
2466
2494
  if (removeDirection !== DIRECTION.NONE) cursorPos = this.masked.nearestInputPos(cursorPos, DIRECTION.NONE);
@@ -2784,6 +2812,11 @@
2784
2812
  get: function get() {
2785
2813
  return this.signed || this.min != null && this.min < 0 || this.max != null && this.max < 0;
2786
2814
  }
2815
+ }, {
2816
+ key: "typedValueEquals",
2817
+ value: function typedValueEquals(value) {
2818
+ 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 === '');
2819
+ }
2787
2820
  }]);
2788
2821
  return MaskedNumber;
2789
2822
  }(Masked);
@@ -2796,6 +2829,7 @@
2796
2829
  normalizeZeros: true,
2797
2830
  padFractionalZeros: false
2798
2831
  };
2832
+ MaskedNumber.EMPTY_VALUES = [].concat(_toConsumableArray(Masked.EMPTY_VALUES), [0]);
2799
2833
  IMask.MaskedNumber = MaskedNumber;
2800
2834
 
2801
2835
  var MaskedFunction = function (_Masked) {
@@ -2844,7 +2878,7 @@
2844
2878
  var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2845
2879
  var details = this._applyDispatch(ch, flags);
2846
2880
  if (this.currentMask) {
2847
- details.aggregate(this.currentMask._appendChar(ch, flags));
2881
+ details.aggregate(this.currentMask._appendChar(ch, this.currentMaskFlags(flags)));
2848
2882
  }
2849
2883
  return details;
2850
2884
  }
@@ -2860,7 +2894,7 @@
2860
2894
  var tailValue = inputValue.slice(insertValue.length);
2861
2895
  var prevMask = this.currentMask;
2862
2896
  var details = new ChangeDetails();
2863
- var prevMaskState = prevMask && prevMask.state;
2897
+ var prevMaskState = prevMask === null || prevMask === void 0 ? void 0 : prevMask.state;
2864
2898
  this.currentMask = this.doDispatch(appended, Object.assign({}, flags));
2865
2899
  if (this.currentMask) {
2866
2900
  if (this.currentMask !== prevMask) {
@@ -2901,6 +2935,14 @@
2901
2935
  }
2902
2936
  return details;
2903
2937
  }
2938
+ }, {
2939
+ key: "currentMaskFlags",
2940
+ value: function currentMaskFlags(flags) {
2941
+ var _flags$_beforeTailSta, _flags$_beforeTailSta2;
2942
+ return Object.assign({}, flags, {
2943
+ _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
2944
+ });
2945
+ }
2904
2946
  }, {
2905
2947
  key: "doDispatch",
2906
2948
  value: function doDispatch(appended) {
@@ -2909,18 +2951,32 @@
2909
2951
  }
2910
2952
  }, {
2911
2953
  key: "doValidate",
2912
- value: function doValidate() {
2913
- var _get2, _this$currentMask;
2914
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2915
- args[_key] = arguments[_key];
2954
+ value: function doValidate(flags) {
2955
+ return _get(_getPrototypeOf(MaskedDynamic.prototype), "doValidate", this).call(this, flags) && (!this.currentMask || this.currentMask.doValidate(this.currentMaskFlags(flags)));
2956
+ }
2957
+ }, {
2958
+ key: "doPrepare",
2959
+ value: function doPrepare(str) {
2960
+ var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2961
+ var _normalizePrepare = normalizePrepare(_get(_getPrototypeOf(MaskedDynamic.prototype), "doPrepare", this).call(this, str, flags)),
2962
+ _normalizePrepare2 = _slicedToArray(_normalizePrepare, 2),
2963
+ s = _normalizePrepare2[0],
2964
+ details = _normalizePrepare2[1];
2965
+ if (this.currentMask) {
2966
+ var currentDetails;
2967
+ var _normalizePrepare3 = normalizePrepare(_get(_getPrototypeOf(MaskedDynamic.prototype), "doPrepare", this).call(this, s, this.currentMaskFlags(flags)));
2968
+ var _normalizePrepare4 = _slicedToArray(_normalizePrepare3, 2);
2969
+ s = _normalizePrepare4[0];
2970
+ currentDetails = _normalizePrepare4[1];
2971
+ details = details.aggregate(currentDetails);
2916
2972
  }
2917
- 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));
2973
+ return [s, details];
2918
2974
  }
2919
2975
  }, {
2920
2976
  key: "reset",
2921
2977
  value: function reset() {
2922
- var _this$currentMask2;
2923
- (_this$currentMask2 = this.currentMask) === null || _this$currentMask2 === void 0 ? void 0 : _this$currentMask2.reset();
2978
+ var _this$currentMask;
2979
+ (_this$currentMask = this.currentMask) === null || _this$currentMask === void 0 ? void 0 : _this$currentMask.reset();
2924
2980
  this.compiledMasks.forEach(function (m) {
2925
2981
  return m.reset();
2926
2982
  });
@@ -2958,22 +3014,22 @@
2958
3014
  }, {
2959
3015
  key: "isComplete",
2960
3016
  get: function get() {
2961
- var _this$currentMask3;
2962
- return Boolean((_this$currentMask3 = this.currentMask) === null || _this$currentMask3 === void 0 ? void 0 : _this$currentMask3.isComplete);
3017
+ var _this$currentMask2;
3018
+ return Boolean((_this$currentMask2 = this.currentMask) === null || _this$currentMask2 === void 0 ? void 0 : _this$currentMask2.isComplete);
2963
3019
  }
2964
3020
  }, {
2965
3021
  key: "isFilled",
2966
3022
  get: function get() {
2967
- var _this$currentMask4;
2968
- return Boolean((_this$currentMask4 = this.currentMask) === null || _this$currentMask4 === void 0 ? void 0 : _this$currentMask4.isFilled);
3023
+ var _this$currentMask3;
3024
+ return Boolean((_this$currentMask3 = this.currentMask) === null || _this$currentMask3 === void 0 ? void 0 : _this$currentMask3.isFilled);
2969
3025
  }
2970
3026
  }, {
2971
3027
  key: "remove",
2972
3028
  value: function remove() {
2973
3029
  var details = new ChangeDetails();
2974
3030
  if (this.currentMask) {
2975
- var _this$currentMask5;
2976
- details.aggregate((_this$currentMask5 = this.currentMask).remove.apply(_this$currentMask5, arguments))
3031
+ var _this$currentMask4;
3032
+ details.aggregate((_this$currentMask4 = this.currentMask).remove.apply(_this$currentMask4, arguments))
2977
3033
  .aggregate(this._applyDispatch());
2978
3034
  }
2979
3035
  return details;
@@ -2981,13 +3037,14 @@
2981
3037
  }, {
2982
3038
  key: "state",
2983
3039
  get: function get() {
3040
+ var _this$currentMask5;
2984
3041
  return Object.assign({}, _get(_getPrototypeOf(MaskedDynamic.prototype), "state", this), {
2985
3042
  _rawInputValue: this.rawInputValue,
2986
3043
  compiledMasks: this.compiledMasks.map(function (m) {
2987
3044
  return m.state;
2988
3045
  }),
2989
3046
  currentMaskRef: this.currentMask,
2990
- currentMask: this.currentMask && this.currentMask.state
3047
+ currentMask: (_this$currentMask5 = this.currentMask) === null || _this$currentMask5 === void 0 ? void 0 : _this$currentMask5.state
2991
3048
  });
2992
3049
  },
2993
3050
  set: function set(state) {
@@ -3013,11 +3070,11 @@
3013
3070
  }, {
3014
3071
  key: "extractTail",
3015
3072
  value: function extractTail() {
3016
- var _this$currentMask7, _get3;
3017
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
3018
- args[_key2] = arguments[_key2];
3073
+ var _this$currentMask7, _get2;
3074
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
3075
+ args[_key] = arguments[_key];
3019
3076
  }
3020
- 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));
3077
+ 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));
3021
3078
  }
3022
3079
  }, {
3023
3080
  key: "doCommit",
@@ -3028,11 +3085,11 @@
3028
3085
  }, {
3029
3086
  key: "nearestInputPos",
3030
3087
  value: function nearestInputPos() {
3031
- var _this$currentMask8, _get4;
3032
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
3033
- args[_key3] = arguments[_key3];
3088
+ var _this$currentMask8, _get3;
3089
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
3090
+ args[_key2] = arguments[_key2];
3034
3091
  }
3035
- 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));
3092
+ 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));
3036
3093
  }
3037
3094
  }, {
3038
3095
  key: "overwrite",
@@ -3058,6 +3115,12 @@
3058
3115
  return m.maskEquals((_mask$mi = mask[mi]) === null || _mask$mi === void 0 ? void 0 : _mask$mi.mask);
3059
3116
  });
3060
3117
  }
3118
+ }, {
3119
+ key: "typedValueEquals",
3120
+ value: function typedValueEquals(value) {
3121
+ var _this$currentMask9;
3122
+ return Boolean((_this$currentMask9 = this.currentMask) === null || _this$currentMask9 === void 0 ? void 0 : _this$currentMask9.typedValueEquals(value));
3123
+ }
3061
3124
  }]);
3062
3125
  return MaskedDynamic;
3063
3126
  }(Masked);
@@ -3070,7 +3133,7 @@
3070
3133
  m.append(inputValue, {
3071
3134
  raw: true
3072
3135
  });
3073
- m.append(appended, flags);
3136
+ m.append(appended, masked.currentMaskFlags(flags));
3074
3137
  var weight = m.rawInputValue.length;
3075
3138
  return {
3076
3139
  weight: weight,
@@ -3258,32 +3321,50 @@
3258
3321
  var min = Math.min;
3259
3322
  var round = Math.round;
3260
3323
 
3261
- function getBoundingClientRect(element, includeScale) {
3324
+ function getUAString() {
3325
+ var uaData = navigator.userAgentData;
3326
+ if (uaData != null && uaData.brands) {
3327
+ return uaData.brands.map(function (item) {
3328
+ return item.brand + "/" + item.version;
3329
+ }).join(' ');
3330
+ }
3331
+ return navigator.userAgent;
3332
+ }
3333
+
3334
+ function isLayoutViewport() {
3335
+ return !/^((?!chrome|android).)*safari/i.test(getUAString());
3336
+ }
3337
+
3338
+ function getBoundingClientRect(element, includeScale, isFixedStrategy) {
3262
3339
  if (includeScale === void 0) {
3263
3340
  includeScale = false;
3264
3341
  }
3265
- var rect = element.getBoundingClientRect();
3342
+ if (isFixedStrategy === void 0) {
3343
+ isFixedStrategy = false;
3344
+ }
3345
+ var clientRect = element.getBoundingClientRect();
3266
3346
  var scaleX = 1;
3267
3347
  var scaleY = 1;
3268
- if (isHTMLElement(element) && includeScale) {
3269
- var offsetHeight = element.offsetHeight;
3270
- var offsetWidth = element.offsetWidth;
3271
- if (offsetWidth > 0) {
3272
- scaleX = round(rect.width) / offsetWidth || 1;
3273
- }
3274
- if (offsetHeight > 0) {
3275
- scaleY = round(rect.height) / offsetHeight || 1;
3276
- }
3277
- }
3348
+ if (includeScale && isHTMLElement(element)) {
3349
+ scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;
3350
+ scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;
3351
+ }
3352
+ var _ref = isElement$1(element) ? getWindow(element) : window,
3353
+ visualViewport = _ref.visualViewport;
3354
+ var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;
3355
+ var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;
3356
+ var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;
3357
+ var width = clientRect.width / scaleX;
3358
+ var height = clientRect.height / scaleY;
3278
3359
  return {
3279
- width: rect.width / scaleX,
3280
- height: rect.height / scaleY,
3281
- top: rect.top / scaleY,
3282
- right: rect.right / scaleX,
3283
- bottom: rect.bottom / scaleY,
3284
- left: rect.left / scaleX,
3285
- x: rect.left / scaleX,
3286
- y: rect.top / scaleY
3360
+ width: width,
3361
+ height: height,
3362
+ top: y,
3363
+ right: x + width,
3364
+ bottom: y + height,
3365
+ left: x,
3366
+ x: x,
3367
+ y: y
3287
3368
  };
3288
3369
  }
3289
3370
 
@@ -3355,8 +3436,8 @@
3355
3436
  return element.offsetParent;
3356
3437
  }
3357
3438
  function getContainingBlock(element) {
3358
- var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;
3359
- var isIE = navigator.userAgent.indexOf('Trident') !== -1;
3439
+ var isFirefox = /firefox/i.test(getUAString());
3440
+ var isIE = /Trident/i.test(getUAString());
3360
3441
  if (isIE && isHTMLElement(element)) {
3361
3442
  var elementCss = getComputedStyle$1(element);
3362
3443
  if (elementCss.position === 'fixed') {
@@ -3703,7 +3784,7 @@
3703
3784
  return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;
3704
3785
  }
3705
3786
 
3706
- function getViewportRect(element) {
3787
+ function getViewportRect(element, strategy) {
3707
3788
  var win = getWindow(element);
3708
3789
  var html = getDocumentElement(element);
3709
3790
  var visualViewport = win.visualViewport;
@@ -3714,7 +3795,8 @@
3714
3795
  if (visualViewport) {
3715
3796
  width = visualViewport.width;
3716
3797
  height = visualViewport.height;
3717
- if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {
3798
+ var layoutViewport = isLayoutViewport();
3799
+ if (layoutViewport || !layoutViewport && strategy === 'fixed') {
3718
3800
  x = visualViewport.offsetLeft;
3719
3801
  y = visualViewport.offsetTop;
3720
3802
  }
@@ -3788,8 +3870,8 @@
3788
3870
  });
3789
3871
  }
3790
3872
 
3791
- function getInnerBoundingClientRect(element) {
3792
- var rect = getBoundingClientRect(element);
3873
+ function getInnerBoundingClientRect(element, strategy) {
3874
+ var rect = getBoundingClientRect(element, false, strategy === 'fixed');
3793
3875
  rect.top = rect.top + element.clientTop;
3794
3876
  rect.left = rect.left + element.clientLeft;
3795
3877
  rect.bottom = rect.top + element.clientHeight;
@@ -3800,8 +3882,8 @@
3800
3882
  rect.y = rect.top;
3801
3883
  return rect;
3802
3884
  }
3803
- function getClientRectFromMixedType(element, clippingParent) {
3804
- return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isElement$1(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
3885
+ function getClientRectFromMixedType(element, clippingParent, strategy) {
3886
+ return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement$1(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));
3805
3887
  }
3806
3888
  function getClippingParents(element) {
3807
3889
  var clippingParents = listScrollParents(getParentNode(element));
@@ -3814,18 +3896,18 @@
3814
3896
  return isElement$1(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';
3815
3897
  });
3816
3898
  }
3817
- function getClippingRect(element, boundary, rootBoundary) {
3899
+ function getClippingRect(element, boundary, rootBoundary, strategy) {
3818
3900
  var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);
3819
3901
  var clippingParents = [].concat(mainClippingParents, [rootBoundary]);
3820
3902
  var firstClippingParent = clippingParents[0];
3821
3903
  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {
3822
- var rect = getClientRectFromMixedType(element, clippingParent);
3904
+ var rect = getClientRectFromMixedType(element, clippingParent, strategy);
3823
3905
  accRect.top = max(rect.top, accRect.top);
3824
3906
  accRect.right = min(rect.right, accRect.right);
3825
3907
  accRect.bottom = min(rect.bottom, accRect.bottom);
3826
3908
  accRect.left = max(rect.left, accRect.left);
3827
3909
  return accRect;
3828
- }, getClientRectFromMixedType(element, firstClippingParent));
3910
+ }, getClientRectFromMixedType(element, firstClippingParent, strategy));
3829
3911
  clippingRect.width = clippingRect.right - clippingRect.left;
3830
3912
  clippingRect.height = clippingRect.bottom - clippingRect.top;
3831
3913
  clippingRect.x = clippingRect.left;
@@ -3895,6 +3977,8 @@
3895
3977
  var _options = options,
3896
3978
  _options$placement = _options.placement,
3897
3979
  placement = _options$placement === void 0 ? state.placement : _options$placement,
3980
+ _options$strategy = _options.strategy,
3981
+ strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,
3898
3982
  _options$boundary = _options.boundary,
3899
3983
  boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,
3900
3984
  _options$rootBoundary = _options.rootBoundary,
@@ -3909,7 +3993,7 @@
3909
3993
  var altContext = elementContext === popper ? reference : popper;
3910
3994
  var popperRect = state.rects.popper;
3911
3995
  var element = state.elements[altBoundary ? altContext : elementContext];
3912
- var clippingClientRect = getClippingRect(isElement$1(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);
3996
+ var clippingClientRect = getClippingRect(isElement$1(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);
3913
3997
  var referenceClientRect = getBoundingClientRect(state.elements.reference);
3914
3998
  var popperOffsets = computeOffsets({
3915
3999
  reference: referenceClientRect,
@@ -4344,7 +4428,7 @@
4344
4428
  var isOffsetParentAnElement = isHTMLElement(offsetParent);
4345
4429
  var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);
4346
4430
  var documentElement = getDocumentElement(offsetParent);
4347
- var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);
4431
+ var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);
4348
4432
  var scroll = {
4349
4433
  scrollLeft: 0,
4350
4434
  scrollTop: 0
@@ -4637,7 +4721,7 @@
4637
4721
  });
4638
4722
 
4639
4723
  /*!
4640
- * Bootstrap v5.2.0 (https://getbootstrap.com/)
4724
+ * Bootstrap v5.2.2 (https://getbootstrap.com/)
4641
4725
  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4642
4726
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
4643
4727
  */
@@ -5168,7 +5252,7 @@
5168
5252
  }
5169
5253
  }
5170
5254
  }
5171
- const VERSION = '5.2.0';
5255
+ const VERSION = '5.2.2';
5172
5256
  class BaseComponent extends Config {
5173
5257
  constructor(element, config) {
5174
5258
  super();
@@ -6012,7 +6096,7 @@
6012
6096
  super(element, config);
6013
6097
  this._popper = null;
6014
6098
  this._parent = this._element.parentNode;
6015
- this._menu = SelectorEngine.findOne(SELECTOR_MENU, this._parent);
6099
+ this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
6016
6100
  this._inNavbar = this._detectNavbar();
6017
6101
  }
6018
6102
  static get Default() {
@@ -6236,7 +6320,7 @@
6236
6320
  return;
6237
6321
  }
6238
6322
  event.preventDefault();
6239
- const getToggleButton = SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
6323
+ 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);
6240
6324
  const instance = Dropdown.getOrCreateInstance(getToggleButton);
6241
6325
  if (isUpOrDownEvent) {
6242
6326
  event.stopPropagation();
@@ -6515,6 +6599,7 @@
6515
6599
  const EVENT_SHOW$4 = `show${EVENT_KEY$4}`;
6516
6600
  const EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;
6517
6601
  const EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;
6602
+ const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;
6518
6603
  const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;
6519
6604
  const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;
6520
6605
  const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;
@@ -6656,16 +6741,18 @@
6656
6741
  }
6657
6742
  });
6658
6743
  EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {
6659
- if (event.target !== event.currentTarget) {
6660
- return;
6661
- }
6662
- if (this._config.backdrop === 'static') {
6663
- this._triggerBackdropTransition();
6664
- return;
6665
- }
6666
- if (this._config.backdrop) {
6667
- this.hide();
6668
- }
6744
+ EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {
6745
+ if (this._element !== event.target || this._element !== event2.target) {
6746
+ return;
6747
+ }
6748
+ if (this._config.backdrop === 'static') {
6749
+ this._triggerBackdropTransition();
6750
+ return;
6751
+ }
6752
+ if (this._config.backdrop) {
6753
+ this.hide();
6754
+ }
6755
+ });
6669
6756
  });
6670
6757
  }
6671
6758
  _hideModal() {
@@ -7207,13 +7294,16 @@
7207
7294
  super(element, config);
7208
7295
  this._isEnabled = true;
7209
7296
  this._timeout = 0;
7210
- this._isHovered = false;
7297
+ this._isHovered = null;
7211
7298
  this._activeTrigger = {};
7212
7299
  this._popper = null;
7213
7300
  this._templateFactory = null;
7214
7301
  this._newContent = null;
7215
7302
  this.tip = null;
7216
7303
  this._setListeners();
7304
+ if (!this._config.selector) {
7305
+ this._fixTitle();
7306
+ }
7217
7307
  }
7218
7308
  static get Default() {
7219
7309
  return Default$3;
@@ -7233,20 +7323,11 @@
7233
7323
  toggleEnabled() {
7234
7324
  this._isEnabled = !this._isEnabled;
7235
7325
  }
7236
- toggle(event) {
7326
+ toggle() {
7237
7327
  if (!this._isEnabled) {
7238
7328
  return;
7239
7329
  }
7240
- if (event) {
7241
- const context = this._initializeOnDelegatedTarget(event);
7242
- context._activeTrigger.click = !context._activeTrigger.click;
7243
- if (context._isWithActiveTrigger()) {
7244
- context._enter();
7245
- } else {
7246
- context._leave();
7247
- }
7248
- return;
7249
- }
7330
+ this._activeTrigger.click = !this._activeTrigger.click;
7250
7331
  if (this._isShown()) {
7251
7332
  this._leave();
7252
7333
  return;
@@ -7259,6 +7340,9 @@
7259
7340
  if (this.tip) {
7260
7341
  this.tip.remove();
7261
7342
  }
7343
+ if (this._element.getAttribute('data-bs-original-title')) {
7344
+ this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));
7345
+ }
7262
7346
  this._disposePopper();
7263
7347
  super.dispose();
7264
7348
  }
@@ -7300,12 +7384,11 @@
7300
7384
  }
7301
7385
  }
7302
7386
  const complete = () => {
7303
- const previousHoverState = this._isHovered;
7304
- this._isHovered = false;
7305
7387
  EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));
7306
- if (previousHoverState) {
7388
+ if (this._isHovered === false) {
7307
7389
  this._leave();
7308
7390
  }
7391
+ this._isHovered = false;
7309
7392
  };
7310
7393
  this._queueCallback(complete, this.tip, this._isAnimated());
7311
7394
  }
@@ -7327,7 +7410,7 @@
7327
7410
  this._activeTrigger[TRIGGER_CLICK] = false;
7328
7411
  this._activeTrigger[TRIGGER_FOCUS] = false;
7329
7412
  this._activeTrigger[TRIGGER_HOVER] = false;
7330
- this._isHovered = false;
7413
+ this._isHovered = null;
7331
7414
  const complete = () => {
7332
7415
  if (this._isWithActiveTrigger()) {
7333
7416
  return;
@@ -7393,7 +7476,7 @@
7393
7476
  };
7394
7477
  }
7395
7478
  _getTitle() {
7396
- return this._resolvePossibleFunction(this._config.title) || this._config.originalTitle;
7479
+ return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');
7397
7480
  }
7398
7481
  _initializeOnDelegatedTarget(event) {
7399
7482
  return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());
@@ -7464,7 +7547,10 @@
7464
7547
  const triggers = this._config.trigger.split(' ');
7465
7548
  for (const trigger of triggers) {
7466
7549
  if (trigger === 'click') {
7467
- EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => this.toggle(event));
7550
+ EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {
7551
+ const context = this._initializeOnDelegatedTarget(event);
7552
+ context.toggle();
7553
+ });
7468
7554
  } else if (trigger !== TRIGGER_MANUAL) {
7469
7555
  const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);
7470
7556
  const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);
@@ -7486,23 +7572,16 @@
7486
7572
  }
7487
7573
  };
7488
7574
  EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);
7489
- if (this._config.selector) {
7490
- this._config = { ...this._config,
7491
- trigger: 'manual',
7492
- selector: ''
7493
- };
7494
- } else {
7495
- this._fixTitle();
7496
- }
7497
7575
  }
7498
7576
  _fixTitle() {
7499
- const title = this._config.originalTitle;
7577
+ const title = this._element.getAttribute('title');
7500
7578
  if (!title) {
7501
7579
  return;
7502
7580
  }
7503
7581
  if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {
7504
7582
  this._element.setAttribute('aria-label', title);
7505
7583
  }
7584
+ this._element.setAttribute('data-bs-original-title', title);
7506
7585
  this._element.removeAttribute('title');
7507
7586
  }
7508
7587
  _enter() {
@@ -7558,7 +7637,6 @@
7558
7637
  hide: config.delay
7559
7638
  };
7560
7639
  }
7561
- config.originalTitle = this._element.getAttribute('title') || '';
7562
7640
  if (typeof config.title === 'number') {
7563
7641
  config.title = config.title.toString();
7564
7642
  }
@@ -7574,6 +7652,8 @@
7574
7652
  config[key] = this._config[key];
7575
7653
  }
7576
7654
  }
7655
+ config.selector = false;
7656
+ config.trigger = 'manual';
7577
7657
  return config;
7578
7658
  }
7579
7659
  _disposePopper() {
@@ -7667,13 +7747,15 @@
7667
7747
  offset: null,
7668
7748
  rootMargin: '0px 0px -25%',
7669
7749
  smoothScroll: false,
7670
- target: null
7750
+ target: null,
7751
+ threshold: [0.1, 0.5, 1]
7671
7752
  };
7672
7753
  const DefaultType$1 = {
7673
7754
  offset: '(number|null)',
7674
7755
  rootMargin: 'string',
7675
7756
  smoothScroll: 'boolean',
7676
- target: 'element'
7757
+ target: 'element',
7758
+ threshold: 'array'
7677
7759
  };
7678
7760
  class ScrollSpy extends BaseComponent {
7679
7761
  constructor(element, config) {
@@ -7716,6 +7798,10 @@
7716
7798
  }
7717
7799
  _configAfterMerge(config) {
7718
7800
  config.target = getElement(config.target) || document.body;
7801
+ config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;
7802
+ if (typeof config.threshold === 'string') {
7803
+ config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));
7804
+ }
7719
7805
  return config;
7720
7806
  }
7721
7807
  _maybeEnableSmoothScroll() {
@@ -7743,8 +7829,8 @@
7743
7829
  _getNewObserver() {
7744
7830
  const options = {
7745
7831
  root: this._rootElement,
7746
- threshold: [0.1, 0.5, 1],
7747
- rootMargin: this._getRootMargin()
7832
+ threshold: this._config.threshold,
7833
+ rootMargin: this._config.rootMargin
7748
7834
  };
7749
7835
  return new IntersectionObserver(entries => this._observerCallback(entries), options);
7750
7836
  }
@@ -7776,9 +7862,6 @@
7776
7862
  }
7777
7863
  }
7778
7864
  }
7779
- _getRootMargin() {
7780
- return this._config.offset ? `${this._config.offset}px 0px -30%` : this._config.rootMargin;
7781
- }
7782
7865
  _initializeTargetsAndObservables() {
7783
7866
  this._targetLinks = new Map();
7784
7867
  this._observableSections = new Map();
@@ -7863,7 +7946,6 @@
7863
7946
  const CLASS_DROPDOWN = 'dropdown';
7864
7947
  const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
7865
7948
  const SELECTOR_DROPDOWN_MENU = '.dropdown-menu';
7866
- const SELECTOR_DROPDOWN_ITEM = '.dropdown-item';
7867
7949
  const NOT_SELECTOR_DROPDOWN_TOGGLE = ':not(.dropdown-toggle)';
7868
7950
  const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
7869
7951
  const SELECTOR_OUTER = '.nav-item, .list-group-item';
@@ -7913,7 +7995,6 @@
7913
7995
  element.classList.add(CLASS_NAME_SHOW$1);
7914
7996
  return;
7915
7997
  }
7916
- element.focus();
7917
7998
  element.removeAttribute('tabindex');
7918
7999
  element.setAttribute('aria-selected', true);
7919
8000
  this._toggleDropDown(element, true);
@@ -7953,6 +8034,9 @@
7953
8034
  const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key);
7954
8035
  const nextActiveElement = getNextActiveElement(this._getChildren().filter(element => !isDisabled(element)), event.target, isNext, true);
7955
8036
  if (nextActiveElement) {
8037
+ nextActiveElement.focus({
8038
+ preventScroll: true
8039
+ });
7956
8040
  Tab.getOrCreateInstance(nextActiveElement).show();
7957
8041
  }
7958
8042
  }
@@ -8005,7 +8089,6 @@
8005
8089
  };
8006
8090
  toggle(SELECTOR_DROPDOWN_TOGGLE, CLASS_NAME_ACTIVE);
8007
8091
  toggle(SELECTOR_DROPDOWN_MENU, CLASS_NAME_SHOW$1);
8008
- toggle(SELECTOR_DROPDOWN_ITEM, CLASS_NAME_ACTIVE);
8009
8092
  outerElem.setAttribute('aria-expanded', open);
8010
8093
  }
8011
8094
  _setAttributeIfNotExists(element, attribute, value) {
@@ -8152,12 +8235,16 @@
8152
8235
  switch (event.type) {
8153
8236
  case 'mouseover':
8154
8237
  case 'mouseout':
8155
- this._hasMouseInteraction = isInteracting;
8156
- break;
8238
+ {
8239
+ this._hasMouseInteraction = isInteracting;
8240
+ break;
8241
+ }
8157
8242
  case 'focusin':
8158
8243
  case 'focusout':
8159
- this._hasKeyboardInteraction = isInteracting;
8160
- break;
8244
+ {
8245
+ this._hasKeyboardInteraction = isInteracting;
8246
+ break;
8247
+ }
8161
8248
  }
8162
8249
  if (isInteracting) {
8163
8250
  this._clearTimeout();
@@ -8212,7 +8299,10 @@
8212
8299
 
8213
8300
  var dropdownTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="dropdown"]'));
8214
8301
  dropdownTriggerList.map(function (dropdownTriggerEl) {
8215
- return new Dropdown(dropdownTriggerEl);
8302
+ var options = {
8303
+ boundary: dropdownTriggerEl.getAttribute('data-bs-boundary') === 'viewport' ? document.querySelector('.btn') : 'clippingParents'
8304
+ };
8305
+ return new Dropdown(dropdownTriggerEl, options);
8216
8306
  });
8217
8307
 
8218
8308
  var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
@@ -8270,6 +8360,28 @@
8270
8360
  return new Toast(toastTriggerEl);
8271
8361
  });
8272
8362
 
8273
- window.bootstrap = bootstrap;
8363
+ var prefix = 'tblr-';
8364
+ var hexToRgba = function hexToRgba(hex, opacity) {
8365
+ var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
8366
+ return result ? "rgba(".concat(parseInt(result[1], 16), ", ").concat(parseInt(result[2], 16), ", ").concat(parseInt(result[3], 16), ", ").concat(opacity, ")") : null;
8367
+ };
8368
+ var getColor = function getColor(color) {
8369
+ var opacity = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
8370
+ var c = getComputedStyle(document.body).getPropertyValue("--".concat(prefix).concat(color)).trim();
8371
+ if (opacity !== 1) {
8372
+ return hexToRgba(c, opacity);
8373
+ }
8374
+ return c;
8375
+ };
8376
+
8377
+ var tabler = /*#__PURE__*/Object.freeze({
8378
+ __proto__: null,
8379
+ prefix: prefix,
8380
+ hexToRgba: hexToRgba,
8381
+ getColor: getColor
8382
+ });
8383
+
8384
+ globalThis.bootstrap = bootstrap;
8385
+ globalThis.tabler = tabler;
8274
8386
 
8275
8387
  }));