primereact 10.0.2 → 10.0.4

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 (333) hide show
  1. package/README.md +1 -4
  2. package/autocomplete/autocomplete.cjs.js +4 -2
  3. package/autocomplete/autocomplete.cjs.min.js +1 -1
  4. package/autocomplete/autocomplete.esm.js +4 -2
  5. package/autocomplete/autocomplete.esm.min.js +1 -1
  6. package/autocomplete/autocomplete.js +4 -2
  7. package/autocomplete/autocomplete.min.js +1 -1
  8. package/blockui/blockui.cjs.js +3 -6
  9. package/blockui/blockui.cjs.min.js +1 -1
  10. package/blockui/blockui.esm.js +3 -6
  11. package/blockui/blockui.esm.min.js +1 -1
  12. package/blockui/blockui.js +3 -6
  13. package/blockui/blockui.min.js +1 -1
  14. package/calendar/calendar.cjs.js +11 -11
  15. package/calendar/calendar.cjs.min.js +1 -1
  16. package/calendar/calendar.esm.js +11 -11
  17. package/calendar/calendar.esm.min.js +1 -1
  18. package/calendar/calendar.js +11 -11
  19. package/calendar/calendar.min.js +1 -1
  20. package/carousel/carousel.cjs.js +3 -1
  21. package/carousel/carousel.cjs.min.js +1 -1
  22. package/carousel/carousel.esm.js +3 -1
  23. package/carousel/carousel.esm.min.js +1 -1
  24. package/carousel/carousel.js +3 -1
  25. package/carousel/carousel.min.js +1 -1
  26. package/checkbox/checkbox.d.ts +5 -5
  27. package/componentbase/componentbase.d.ts +8 -0
  28. package/contextmenu/contextmenu.cjs.js +4 -1
  29. package/contextmenu/contextmenu.cjs.min.js +1 -1
  30. package/contextmenu/contextmenu.esm.js +4 -1
  31. package/contextmenu/contextmenu.esm.min.js +1 -1
  32. package/contextmenu/contextmenu.js +4 -1
  33. package/contextmenu/contextmenu.min.js +1 -1
  34. package/core/core.js +288 -31
  35. package/core/core.min.js +8 -8
  36. package/datatable/datatable.cjs.js +92 -41
  37. package/datatable/datatable.cjs.min.js +1 -1
  38. package/datatable/datatable.d.ts +27 -0
  39. package/datatable/datatable.esm.js +92 -41
  40. package/datatable/datatable.esm.min.js +1 -1
  41. package/datatable/datatable.js +92 -41
  42. package/datatable/datatable.min.js +1 -1
  43. package/dataview/dataview.cjs.js +24 -22
  44. package/dataview/dataview.cjs.min.js +1 -1
  45. package/dataview/dataview.esm.js +24 -22
  46. package/dataview/dataview.esm.min.js +1 -1
  47. package/dataview/dataview.js +24 -22
  48. package/dataview/dataview.min.js +1 -1
  49. package/dialog/dialog.cjs.js +2 -4
  50. package/dialog/dialog.cjs.min.js +1 -1
  51. package/dialog/dialog.esm.js +2 -4
  52. package/dialog/dialog.esm.min.js +1 -1
  53. package/dialog/dialog.js +2 -4
  54. package/dialog/dialog.min.js +1 -1
  55. package/dropdown/dropdown.cjs.js +29 -17
  56. package/dropdown/dropdown.cjs.min.js +1 -1
  57. package/dropdown/dropdown.esm.js +29 -17
  58. package/dropdown/dropdown.esm.min.js +1 -1
  59. package/dropdown/dropdown.js +29 -17
  60. package/dropdown/dropdown.min.js +1 -1
  61. package/editor/editor.cjs.js +1 -1
  62. package/editor/editor.cjs.min.js +1 -1
  63. package/editor/editor.esm.js +1 -1
  64. package/editor/editor.esm.min.js +1 -1
  65. package/editor/editor.js +1 -1
  66. package/editor/editor.min.js +1 -1
  67. package/fieldset/fieldset.cjs.js +2 -2
  68. package/fieldset/fieldset.cjs.min.js +1 -1
  69. package/fieldset/fieldset.esm.js +2 -2
  70. package/fieldset/fieldset.esm.min.js +1 -1
  71. package/fieldset/fieldset.js +3 -3
  72. package/fieldset/fieldset.min.js +1 -1
  73. package/galleria/galleria.cjs.js +3 -5
  74. package/galleria/galleria.cjs.min.js +1 -1
  75. package/galleria/galleria.esm.js +3 -5
  76. package/galleria/galleria.esm.min.js +1 -1
  77. package/galleria/galleria.js +3 -5
  78. package/galleria/galleria.min.js +1 -1
  79. package/hooks/hooks.cjs.js +2 -1
  80. package/hooks/hooks.cjs.min.js +1 -1
  81. package/hooks/hooks.d.ts +1 -1
  82. package/hooks/hooks.esm.js +2 -1
  83. package/hooks/hooks.esm.min.js +1 -1
  84. package/hooks/hooks.js +2 -1
  85. package/hooks/hooks.min.js +1 -1
  86. package/icons/arrowdown/index.cjs.js +7 -0
  87. package/icons/arrowdown/index.esm.js +7 -0
  88. package/icons/arrowdown/index.js +7 -0
  89. package/icons/arrowup/index.cjs.js +7 -0
  90. package/icons/arrowup/index.esm.js +7 -0
  91. package/icons/arrowup/index.js +7 -0
  92. package/icons/ban/index.cjs.js +7 -0
  93. package/icons/ban/index.esm.js +7 -0
  94. package/icons/ban/index.js +7 -0
  95. package/icons/download/index.cjs.js +7 -0
  96. package/icons/download/index.esm.js +7 -0
  97. package/icons/download/index.js +7 -0
  98. package/icons/exclamationtriangle/index.cjs.js +7 -0
  99. package/icons/exclamationtriangle/index.esm.js +7 -0
  100. package/icons/exclamationtriangle/index.js +7 -0
  101. package/icons/eyeslash/index.cjs.js +7 -0
  102. package/icons/eyeslash/index.esm.js +7 -0
  103. package/icons/eyeslash/index.js +7 -0
  104. package/icons/filter/index.cjs.js +7 -0
  105. package/icons/filter/index.esm.js +7 -0
  106. package/icons/filter/index.js +7 -0
  107. package/icons/filterslash/index.cjs.js +7 -0
  108. package/icons/filterslash/index.esm.js +7 -0
  109. package/icons/filterslash/index.js +7 -0
  110. package/icons/infocircle/index.cjs.js +7 -0
  111. package/icons/infocircle/index.esm.js +7 -0
  112. package/icons/infocircle/index.js +7 -0
  113. package/icons/pencil/index.cjs.js +7 -0
  114. package/icons/pencil/index.esm.js +7 -0
  115. package/icons/pencil/index.js +7 -0
  116. package/icons/plus/index.cjs.js +7 -0
  117. package/icons/plus/index.esm.js +7 -0
  118. package/icons/plus/index.js +7 -0
  119. package/icons/refresh/index.cjs.js +7 -0
  120. package/icons/refresh/index.esm.js +7 -0
  121. package/icons/refresh/index.js +7 -0
  122. package/icons/search/index.cjs.js +7 -0
  123. package/icons/search/index.esm.js +7 -0
  124. package/icons/search/index.js +7 -0
  125. package/icons/searchminus/index.cjs.js +7 -0
  126. package/icons/searchminus/index.esm.js +7 -0
  127. package/icons/searchminus/index.js +7 -0
  128. package/icons/searchplus/index.cjs.js +7 -0
  129. package/icons/searchplus/index.esm.js +7 -0
  130. package/icons/searchplus/index.js +7 -0
  131. package/icons/sortalt/index.cjs.js +7 -0
  132. package/icons/sortalt/index.esm.js +7 -0
  133. package/icons/sortalt/index.js +7 -0
  134. package/icons/sortamountdown/index.cjs.js +7 -0
  135. package/icons/sortamountdown/index.esm.js +7 -0
  136. package/icons/sortamountdown/index.js +7 -0
  137. package/icons/sortamountupalt/index.cjs.js +7 -0
  138. package/icons/sortamountupalt/index.esm.js +7 -0
  139. package/icons/sortamountupalt/index.js +7 -0
  140. package/icons/spinner/index.cjs.js +7 -0
  141. package/icons/spinner/index.esm.js +7 -0
  142. package/icons/spinner/index.js +7 -0
  143. package/icons/star/index.cjs.js +7 -0
  144. package/icons/star/index.esm.js +7 -0
  145. package/icons/star/index.js +7 -0
  146. package/icons/starfill/index.cjs.js +7 -0
  147. package/icons/starfill/index.esm.js +7 -0
  148. package/icons/starfill/index.js +7 -0
  149. package/icons/thlarge/index.cjs.js +7 -0
  150. package/icons/thlarge/index.esm.js +7 -0
  151. package/icons/thlarge/index.js +7 -0
  152. package/icons/timescircle/index.cjs.js +7 -0
  153. package/icons/timescircle/index.esm.js +7 -0
  154. package/icons/timescircle/index.js +7 -0
  155. package/icons/trash/index.cjs.js +7 -0
  156. package/icons/trash/index.esm.js +7 -0
  157. package/icons/trash/index.js +7 -0
  158. package/icons/undo/index.cjs.js +7 -0
  159. package/icons/undo/index.esm.js +7 -0
  160. package/icons/undo/index.js +7 -0
  161. package/icons/upload/index.cjs.js +7 -0
  162. package/icons/upload/index.esm.js +7 -0
  163. package/icons/upload/index.js +7 -0
  164. package/icons/windowmaximize/index.cjs.js +7 -0
  165. package/icons/windowmaximize/index.esm.js +7 -0
  166. package/icons/windowmaximize/index.js +7 -0
  167. package/icons/windowminimize/index.cjs.js +7 -0
  168. package/icons/windowminimize/index.esm.js +7 -0
  169. package/icons/windowminimize/index.js +7 -0
  170. package/image/image.cjs.js +111 -106
  171. package/image/image.cjs.min.js +1 -1
  172. package/image/image.esm.js +111 -106
  173. package/image/image.esm.min.js +1 -1
  174. package/image/image.js +112 -107
  175. package/image/image.min.js +1 -1
  176. package/inputnumber/inputnumber.cjs.js +7 -4
  177. package/inputnumber/inputnumber.cjs.min.js +1 -1
  178. package/inputnumber/inputnumber.esm.js +7 -4
  179. package/inputnumber/inputnumber.esm.min.js +1 -1
  180. package/inputnumber/inputnumber.js +7 -4
  181. package/inputnumber/inputnumber.min.js +1 -1
  182. package/menu/menu.cjs.js +105 -1
  183. package/menu/menu.cjs.min.js +1 -1
  184. package/menu/menu.d.ts +5 -0
  185. package/menu/menu.esm.js +108 -4
  186. package/menu/menu.esm.min.js +1 -1
  187. package/menu/menu.js +105 -1
  188. package/menu/menu.min.js +1 -1
  189. package/message/message.cjs.js +1 -1
  190. package/message/message.cjs.min.js +1 -1
  191. package/message/message.esm.js +1 -1
  192. package/message/message.esm.min.js +1 -1
  193. package/message/message.js +1 -1
  194. package/message/message.min.js +1 -1
  195. package/messages/messages.cjs.js +4 -2
  196. package/messages/messages.cjs.min.js +1 -1
  197. package/messages/messages.esm.js +5 -3
  198. package/messages/messages.esm.min.js +1 -1
  199. package/messages/messages.js +4 -2
  200. package/messages/messages.min.js +1 -1
  201. package/multiselect/multiselect.cjs.js +26 -12
  202. package/multiselect/multiselect.cjs.min.js +1 -1
  203. package/multiselect/multiselect.d.ts +4 -0
  204. package/multiselect/multiselect.esm.js +26 -12
  205. package/multiselect/multiselect.esm.min.js +1 -1
  206. package/multiselect/multiselect.js +26 -12
  207. package/multiselect/multiselect.min.js +1 -1
  208. package/orderlist/orderlist.cjs.js +32 -34
  209. package/orderlist/orderlist.cjs.min.js +1 -1
  210. package/orderlist/orderlist.esm.js +32 -34
  211. package/orderlist/orderlist.esm.min.js +1 -1
  212. package/orderlist/orderlist.js +32 -34
  213. package/orderlist/orderlist.min.js +1 -1
  214. package/package.json +1 -1
  215. package/panel/panel.cjs.js +2 -2
  216. package/panel/panel.cjs.min.js +1 -1
  217. package/panel/panel.esm.js +2 -2
  218. package/panel/panel.esm.min.js +1 -1
  219. package/panel/panel.js +3 -3
  220. package/panel/panel.min.js +1 -1
  221. package/passthrough/tailwind/index.cjs.js +436 -373
  222. package/passthrough/tailwind/index.cjs.min.js +1 -1
  223. package/passthrough/tailwind/index.esm.js +436 -373
  224. package/passthrough/tailwind/index.esm.min.js +1 -1
  225. package/passthrough/tailwind/index.js +436 -373
  226. package/passthrough/tailwind/index.min.js +1 -1
  227. package/primereact.all.cjs.js +330 -191
  228. package/primereact.all.cjs.min.js +1 -1
  229. package/primereact.all.esm.js +330 -191
  230. package/primereact.all.esm.min.js +1 -1
  231. package/primereact.all.js +330 -191
  232. package/primereact.all.min.js +1 -1
  233. package/progressbar/progressbar.cjs.js +1 -1
  234. package/progressbar/progressbar.cjs.min.js +1 -1
  235. package/progressbar/progressbar.esm.js +1 -1
  236. package/progressbar/progressbar.esm.min.js +1 -1
  237. package/progressbar/progressbar.js +1 -1
  238. package/progressbar/progressbar.min.js +1 -1
  239. package/radiobutton/radiobutton.d.ts +3 -3
  240. package/resources/themes/arya-blue/theme.css +397 -518
  241. package/resources/themes/arya-green/theme.css +397 -518
  242. package/resources/themes/arya-orange/theme.css +397 -518
  243. package/resources/themes/arya-purple/theme.css +397 -518
  244. package/resources/themes/bootstrap4-dark-blue/theme.css +398 -518
  245. package/resources/themes/bootstrap4-dark-purple/theme.css +398 -518
  246. package/resources/themes/bootstrap4-light-blue/theme.css +398 -518
  247. package/resources/themes/bootstrap4-light-purple/theme.css +398 -518
  248. package/resources/themes/fluent-light/theme.css +424 -529
  249. package/resources/themes/lara-dark-blue/theme.css +402 -518
  250. package/resources/themes/lara-dark-indigo/theme.css +402 -518
  251. package/resources/themes/lara-dark-purple/theme.css +402 -518
  252. package/resources/themes/lara-dark-teal/theme.css +402 -518
  253. package/resources/themes/lara-light-blue/theme.css +571 -687
  254. package/resources/themes/lara-light-indigo/theme.css +409 -525
  255. package/resources/themes/lara-light-purple/theme.css +409 -525
  256. package/resources/themes/lara-light-teal/theme.css +409 -525
  257. package/resources/themes/luna-amber/theme.css +411 -531
  258. package/resources/themes/luna-blue/theme.css +411 -531
  259. package/resources/themes/luna-green/theme.css +411 -531
  260. package/resources/themes/luna-pink/theme.css +411 -531
  261. package/resources/themes/md-dark-deeppurple/theme.css +669 -739
  262. package/resources/themes/md-dark-indigo/theme.css +669 -739
  263. package/resources/themes/md-light-deeppurple/theme.css +574 -644
  264. package/resources/themes/md-light-indigo/theme.css +574 -644
  265. package/resources/themes/mdc-dark-deeppurple/theme.css +669 -739
  266. package/resources/themes/mdc-dark-indigo/theme.css +669 -739
  267. package/resources/themes/mdc-light-deeppurple/theme.css +574 -644
  268. package/resources/themes/mdc-light-indigo/theme.css +574 -644
  269. package/resources/themes/mira/theme.css +435 -525
  270. package/resources/themes/nano/theme.css +395 -518
  271. package/resources/themes/nova/theme.css +399 -518
  272. package/resources/themes/nova-accent/theme.css +396 -518
  273. package/resources/themes/nova-alt/theme.css +399 -518
  274. package/resources/themes/rhea/theme.css +396 -518
  275. package/resources/themes/saga-blue/theme.css +397 -518
  276. package/resources/themes/saga-green/theme.css +397 -518
  277. package/resources/themes/saga-orange/theme.css +397 -518
  278. package/resources/themes/saga-purple/theme.css +397 -518
  279. package/resources/themes/soho-dark/theme.css +428 -546
  280. package/resources/themes/soho-light/theme.css +407 -523
  281. package/resources/themes/tailwind-light/theme.css +432 -547
  282. package/resources/themes/vela-blue/theme.css +397 -518
  283. package/resources/themes/vela-green/theme.css +397 -518
  284. package/resources/themes/vela-orange/theme.css +397 -518
  285. package/resources/themes/vela-purple/theme.css +397 -518
  286. package/resources/themes/viva-dark/theme.css +421 -523
  287. package/resources/themes/viva-light/theme.css +421 -523
  288. package/scrollpanel/scrollpanel.cjs.js +33 -17
  289. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  290. package/scrollpanel/scrollpanel.esm.js +19 -3
  291. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  292. package/scrollpanel/scrollpanel.js +226 -210
  293. package/scrollpanel/scrollpanel.min.js +1 -1
  294. package/selectbutton/selectbutton.cjs.js +3 -2
  295. package/selectbutton/selectbutton.cjs.min.js +1 -1
  296. package/selectbutton/selectbutton.d.ts +6 -0
  297. package/selectbutton/selectbutton.esm.js +3 -2
  298. package/selectbutton/selectbutton.esm.min.js +1 -1
  299. package/selectbutton/selectbutton.js +4 -3
  300. package/selectbutton/selectbutton.min.js +1 -1
  301. package/sidebar/sidebar.cjs.js +87 -89
  302. package/sidebar/sidebar.cjs.min.js +1 -1
  303. package/sidebar/sidebar.esm.js +87 -89
  304. package/sidebar/sidebar.esm.min.js +1 -1
  305. package/sidebar/sidebar.js +88 -90
  306. package/sidebar/sidebar.min.js +1 -1
  307. package/slider/slider.cjs.js +3 -3
  308. package/slider/slider.cjs.min.js +1 -1
  309. package/slider/slider.esm.js +3 -3
  310. package/slider/slider.esm.min.js +1 -1
  311. package/slider/slider.js +3 -3
  312. package/slider/slider.min.js +1 -1
  313. package/toast/toast.cjs.js +7 -5
  314. package/toast/toast.cjs.min.js +1 -1
  315. package/toast/toast.esm.js +7 -5
  316. package/toast/toast.esm.min.js +1 -1
  317. package/toast/toast.js +8 -6
  318. package/toast/toast.min.js +1 -1
  319. package/tree/tree.cjs.js +24 -2
  320. package/tree/tree.cjs.min.js +1 -1
  321. package/tree/tree.esm.js +24 -2
  322. package/tree/tree.esm.min.js +1 -1
  323. package/tree/tree.js +24 -2
  324. package/tree/tree.min.js +1 -1
  325. package/treeselect/treeselect.d.ts +54 -4
  326. package/utils/utils.cjs.js +30 -0
  327. package/utils/utils.cjs.min.js +1 -1
  328. package/utils/utils.d.ts +3 -0
  329. package/utils/utils.esm.js +30 -0
  330. package/utils/utils.esm.min.js +1 -1
  331. package/utils/utils.js +30 -0
  332. package/utils/utils.min.js +1 -1
  333. package/web-types.json +29 -2
@@ -1042,6 +1042,11 @@ var DomHandler = /*#__PURE__*/function () {
1042
1042
  return scrollbarWidth;
1043
1043
  }
1044
1044
  }
1045
+ }, {
1046
+ key: "calculateBodyScrollbarWidth",
1047
+ value: function calculateBodyScrollbarWidth() {
1048
+ return window.innerWidth - document.documentElement.offsetWidth;
1049
+ }
1045
1050
  }, {
1046
1051
  key: "getBrowser",
1047
1052
  value: function getBrowser() {
@@ -1070,6 +1075,24 @@ var DomHandler = /*#__PURE__*/function () {
1070
1075
  version: match[2] || '0'
1071
1076
  };
1072
1077
  }
1078
+ }, {
1079
+ key: "blockBodyScroll",
1080
+ value: function blockBodyScroll() {
1081
+ var className = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'p-overflow-hidden';
1082
+ /* PR Ref: https://github.com/primefaces/primereact/pull/4976
1083
+ * @todo This method is called several times after this PR. Refactors will be made to prevent this in future releases.
1084
+ */
1085
+ var hasScrollbarWidth = !!document.body.style.getPropertyValue('--scrollbar-width');
1086
+ !hasScrollbarWidth && document.body.style.setProperty('--scrollbar-width', this.calculateBodyScrollbarWidth() + 'px');
1087
+ this.addClass(document.body, className);
1088
+ }
1089
+ }, {
1090
+ key: "unblockBodyScroll",
1091
+ value: function unblockBodyScroll() {
1092
+ var className = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'p-overflow-hidden';
1093
+ document.body.style.removeProperty('--scrollbar-width');
1094
+ this.removeClass(document.body, className);
1095
+ }
1073
1096
  }, {
1074
1097
  key: "isVisible",
1075
1098
  value: function isVisible(element) {
@@ -1428,6 +1451,13 @@ var ObjectUtils = /*#__PURE__*/function () {
1428
1451
  value: function equals(obj1, obj2, field) {
1429
1452
  if (field && obj1 && _typeof(obj1) === 'object' && obj2 && _typeof(obj2) === 'object') return this.resolveFieldData(obj1, field) === this.resolveFieldData(obj2, field);else return this.deepEquals(obj1, obj2);
1430
1453
  }
1454
+
1455
+ /**
1456
+ * Compares two JSON objects for deep equality recursively comparing both objects.
1457
+ * @param {*} a the first JSON object
1458
+ * @param {*} b the second JSON object
1459
+ * @returns true if equals, false it not
1460
+ */
1431
1461
  }, {
1432
1462
  key: "deepEquals",
1433
1463
  value: function deepEquals(a, b) {
@@ -3992,7 +4022,8 @@ var useStorage = function useStorage(initialValue, key) {
3992
4022
  listener: function listener(event) {
3993
4023
  var area = storage === 'local' ? window.localStorage : window.sessionStorage;
3994
4024
  if (event.storageArea === area && event.key === key) {
3995
- setStoredValue(event.newValue || undefined);
4025
+ var newValue = event.newValue ? JSON.parse(event.newValue) : undefined;
4026
+ setStoredValue(newValue);
3996
4027
  }
3997
4028
  }
3998
4029
  }),
@@ -8548,8 +8579,10 @@ var AutoComplete = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__names
8548
8579
  var onOverlayEntering = function onOverlayEntering() {
8549
8580
  if (props.autoHighlight && props.suggestions && props.suggestions.length) {
8550
8581
  var element = getScrollableElement().firstChild.firstChild;
8551
- !isUnstyled() && DomHandler.addClass(element, 'p-highlight');
8552
- element.current.setAttribute('data-p-highlight', true);
8582
+ if (element) {
8583
+ !isUnstyled() && DomHandler.addClass(element, 'p-highlight');
8584
+ element.setAttribute('data-p-highlight', true);
8585
+ }
8553
8586
  }
8554
8587
  };
8555
8588
  var onOverlayEntered = function onOverlayEntered() {
@@ -9246,8 +9279,7 @@ var BlockUI = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
9246
9279
  var unblock = function unblock() {
9247
9280
  var callback = function callback() {
9248
9281
  setVisibleState(false);
9249
- props.fullScreen && DomHandler.removeClass(document.body, 'p-overflow-hidden');
9250
- document.body.style.removeProperty('--scrollbar-width');
9282
+ props.fullScreen && DomHandler.unblockBodyScroll();
9251
9283
  props.onUnblocked && props.onUnblocked();
9252
9284
  };
9253
9285
  if (maskRef.current) {
@@ -9262,8 +9294,7 @@ var BlockUI = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
9262
9294
  };
9263
9295
  var onPortalMounted = function onPortalMounted() {
9264
9296
  if (props.fullScreen) {
9265
- DomHandler.addClass(document.body, 'p-overflow-hidden');
9266
- document.body.style.setProperty('--scrollbar-width', DomHandler.calculateScrollbarWidth() + 'px');
9297
+ DomHandler.blockBodyScroll();
9267
9298
  document.activeElement.blur();
9268
9299
  }
9269
9300
  if (props.autoZIndex) {
@@ -9280,8 +9311,7 @@ var BlockUI = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
9280
9311
  }, [props.blocked]);
9281
9312
  useUnmountEffect(function () {
9282
9313
  if (props.fullScreen) {
9283
- DomHandler.removeClass(document.body, 'p-overflow-hidden');
9284
- document.body.style.removeProperty('--scrollbar-width');
9314
+ DomHandler.unblockBodyScroll();
9285
9315
  }
9286
9316
  ZIndexUtils.clear(maskRef.current);
9287
9317
  });
@@ -10929,7 +10959,7 @@ var Calendar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
10929
10959
  milliseconds = _ref2[3];
10930
10960
  }
10931
10961
  date.setHours(hours);
10932
- date.setMinutes(minutes);
10962
+ date.setMinutes(doStepMinute(minutes));
10933
10963
  date.setSeconds(seconds);
10934
10964
  date.setMilliseconds(milliseconds);
10935
10965
  }
@@ -11116,6 +11146,14 @@ var Calendar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
11116
11146
  alignOverlay();
11117
11147
  };
11118
11148
  var onOverlayEntered = function onOverlayEntered() {
11149
+ if (!props.touchUI && overlayRef && overlayRef.current && inputRef && inputRef.current && !appendDisabled()) {
11150
+ if (props.view === 'date') {
11151
+ overlayRef.current.style.width = DomHandler.getOuterWidth(overlayRef.current) + 'px';
11152
+ overlayRef.current.style.minWidth = DomHandler.getOuterWidth(inputRef.current) + 'px';
11153
+ } else {
11154
+ overlayRef.current.style.width = DomHandler.getOuterWidth(inputRef.current) + 'px';
11155
+ }
11156
+ }
11119
11157
  bindOverlayListener();
11120
11158
  props.onShow && props.onShow();
11121
11159
  DomHandler.focusFirstElement(overlayRef.current);
@@ -11139,12 +11177,6 @@ var Calendar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
11139
11177
  if (appendDisabled()) {
11140
11178
  DomHandler.relativePosition(overlayRef.current, inputRef.current);
11141
11179
  } else {
11142
- if (props.view === 'date') {
11143
- overlayRef.current.style.width = DomHandler.getOuterWidth(overlayRef.current) + 'px';
11144
- overlayRef.current.style.minWidth = DomHandler.getOuterWidth(inputRef.current) + 'px';
11145
- } else {
11146
- overlayRef.current.style.width = DomHandler.getOuterWidth(inputRef.current) + 'px';
11147
- }
11148
11180
  DomHandler.absolutePosition(overlayRef.current, inputRef.current);
11149
11181
  }
11150
11182
  }
@@ -11160,8 +11192,7 @@ var Calendar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
11160
11192
  };
11161
11193
  touchUIMask.current.addEventListener('click', touchUIMaskClickListener.current);
11162
11194
  document.body.appendChild(touchUIMask.current);
11163
- DomHandler.addClass(document.body, 'p-overflow-hidden');
11164
- document.body.style.setProperty('--scrollbar-width', DomHandler.calculateScrollbarWidth() + 'px');
11195
+ DomHandler.blockBodyScroll();
11165
11196
  }
11166
11197
  };
11167
11198
  var disableModality = function disableModality() {
@@ -11193,8 +11224,7 @@ var Calendar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
11193
11224
  }
11194
11225
  }
11195
11226
  if (!hasBlockerMasks) {
11196
- DomHandler.removeClass(document.body, 'p-overflow-hidden');
11197
- document.body.style.removeProperty('--scrollbar-width');
11227
+ DomHandler.unblockBodyScroll();
11198
11228
  }
11199
11229
  };
11200
11230
  var isOutsideClicked = function isOutsideClicked(event) {
@@ -13643,7 +13673,9 @@ var Carousel = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
13643
13673
  var rootProps = mergeProps({
13644
13674
  id: props.id,
13645
13675
  ref: elementRef,
13646
- className: classNames(props.className, cx('root')),
13676
+ className: classNames(props.className, cx('root', {
13677
+ isVertical: isVertical
13678
+ })),
13647
13679
  style: props.style
13648
13680
  }, CarouselBase.getOtherProps(props), ptm('root'));
13649
13681
  var contentProps = mergeProps({
@@ -16348,11 +16380,9 @@ var Dialog = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
16348
16380
  return i.hasBlockScroll;
16349
16381
  });
16350
16382
  if (isThereAnyDialogThatBlocksScrolling) {
16351
- DomHandler.addClass(document.body, 'p-overflow-hidden');
16352
- document.body.style.setProperty('--scrollbar-width', DomHandler.calculateScrollbarWidth() + 'px');
16383
+ DomHandler.blockBodyScroll();
16353
16384
  } else {
16354
- DomHandler.removeClass(document.body, 'p-overflow-hidden');
16355
- document.body.style.removeProperty('--scrollbar-width');
16385
+ DomHandler.unblockBodyScroll();
16356
16386
  }
16357
16387
  };
16358
16388
  var updateGlobalDialogsRegistry = function updateGlobalDialogsRegistry(isMounted) {
@@ -17482,7 +17512,7 @@ var ContextMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
17482
17512
  className: 'p-menuitem-link',
17483
17513
  labelClassName: 'p-menuitem-text',
17484
17514
  iconClassName: 'p-menuitem-icon',
17485
- submenuIconClassName: submenuIconClassName,
17515
+ submenuIconClassName: cx('submenuIcon'),
17486
17516
  element: content,
17487
17517
  props: props,
17488
17518
  active: active
@@ -17719,6 +17749,9 @@ var ContextMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
17719
17749
  useMountEffect(function () {
17720
17750
  var uniqueId = UniqueComponentId();
17721
17751
  !idState && setIdState(uniqueId);
17752
+ if (props.global) {
17753
+ bindDocumentContextMenuListener();
17754
+ }
17722
17755
  if (props.breakpoint) {
17723
17756
  !attributeSelectorState && setAttributeSelectorState(uniqueId);
17724
17757
  }
@@ -18682,8 +18715,9 @@ var InputNumber = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
18682
18715
  };
18683
18716
  var onUpButtonMouseDown = function onUpButtonMouseDown(event) {
18684
18717
  if (!props.disabled && !props.readOnly) {
18685
- props.autoFocus && DomHandler.focus(inputRef.current, props.autoFocus);
18718
+ DomHandler.focus(inputRef.current, props.autoFocus);
18686
18719
  repeat(event, null, 1);
18720
+ event.preventDefault();
18687
18721
  }
18688
18722
  };
18689
18723
  var onUpButtonMouseUp = function onUpButtonMouseUp() {
@@ -18708,8 +18742,9 @@ var InputNumber = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
18708
18742
  };
18709
18743
  var onDownButtonMouseDown = function onDownButtonMouseDown(event) {
18710
18744
  if (!props.disabled && !props.readOnly) {
18711
- props.autoFocus && DomHandler.focus(inputRef.current, props.autoFocus);
18745
+ DomHandler.focus(inputRef.current, props.autoFocus);
18712
18746
  repeat(event, null, -1);
18747
+ event.preventDefault();
18713
18748
  }
18714
18749
  };
18715
18750
  var onDownButtonMouseUp = function onDownButtonMouseUp() {
@@ -19442,7 +19477,6 @@ var InputNumber = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
19442
19477
  var buttonGroup = createButtonGroup();
19443
19478
  var rootProps = mergeProps({
19444
19479
  id: props.id,
19445
- ref: elementRef,
19446
19480
  className: classNames(props.className, cx('root', {
19447
19481
  focusedState: focusedState,
19448
19482
  stacked: stacked,
@@ -19451,7 +19485,9 @@ var InputNumber = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
19451
19485
  })),
19452
19486
  style: props.style
19453
19487
  }, otherProps, ptm('root'));
19454
- return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("span", rootProps, inputElement, buttonGroup), hasTooltip && /*#__PURE__*/React__namespace.createElement(Tooltip, _extends({
19488
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("span", _extends({
19489
+ ref: elementRef
19490
+ }, rootProps), inputElement, buttonGroup), hasTooltip && /*#__PURE__*/React__namespace.createElement(Tooltip, _extends({
19455
19491
  target: elementRef,
19456
19492
  content: props.tooltip
19457
19493
  }, props.tooltipOptions, {
@@ -19753,32 +19789,37 @@ var classes$O = {
19753
19789
  },
19754
19790
  trigger: 'p-dropdown-trigger',
19755
19791
  emptyMessage: 'p-dropdown-empty-message',
19756
- itemGroup: 'p-dropdown-item-group',
19792
+ itemGroup: function itemGroup(_ref3) {
19793
+ var optionGroupLabel = _ref3.optionGroupLabel;
19794
+ return classNames('p-dropdown-item-group', {
19795
+ 'p-dropdown-item-empty': !optionGroupLabel || optionGroupLabel.length === 0
19796
+ });
19797
+ },
19757
19798
  dropdownIcon: 'p-dropdown-trigger-icon p-clickable',
19758
19799
  clearIcon: 'p-dropdown-clear-icon p-clickable',
19759
19800
  filterIcon: 'p-dropdown-filter-icon',
19760
- filterContainer: function filterContainer(_ref3) {
19761
- var clearIcon = _ref3.clearIcon;
19801
+ filterContainer: function filterContainer(_ref4) {
19802
+ var clearIcon = _ref4.clearIcon;
19762
19803
  return classNames('p-dropdown-filter-container', {
19763
19804
  'p-dropdown-clearable-filter': !!clearIcon
19764
19805
  });
19765
19806
  },
19766
19807
  filterInput: 'p-dropdown-filter p-inputtext p-component',
19767
- list: function list(_ref4) {
19768
- var virtualScrollerOptions = _ref4.virtualScrollerOptions;
19808
+ list: function list(_ref5) {
19809
+ var virtualScrollerOptions = _ref5.virtualScrollerOptions;
19769
19810
  return virtualScrollerOptions ? 'p-dropdown-items' : 'p-dropdown-items';
19770
19811
  },
19771
- panel: function panel(_ref5) {
19772
- var context = _ref5.context;
19812
+ panel: function panel(_ref6) {
19813
+ var context = _ref6.context;
19773
19814
  return classNames('p-dropdown-panel p-component', {
19774
19815
  'p-input-filled': context && context.inputStyle === 'filled' || PrimeReact.inputStyle === 'filled',
19775
19816
  'p-ripple-disabled': context && context.ripple === false || PrimeReact.ripple === false
19776
19817
  });
19777
19818
  },
19778
- item: function item(_ref6) {
19779
- var selected = _ref6.selected,
19780
- disabled = _ref6.disabled,
19781
- label = _ref6.label;
19819
+ item: function item(_ref7) {
19820
+ var selected = _ref7.selected,
19821
+ disabled = _ref7.disabled,
19822
+ label = _ref7.label;
19782
19823
  return classNames('p-dropdown-item', {
19783
19824
  'p-highlight': selected,
19784
19825
  'p-disabled': disabled,
@@ -19792,14 +19833,14 @@ var classes$O = {
19792
19833
  };
19793
19834
  var styles$K = "\n@layer primereact {\n .p-dropdown {\n display: inline-flex;\n cursor: pointer;\n position: relative;\n user-select: none;\n }\n \n .p-dropdown-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n }\n \n .p-dropdown-label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n flex: 1 1 auto;\n width: 1%;\n text-overflow: ellipsis;\n cursor: pointer;\n }\n \n .p-dropdown-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n input.p-dropdown-label {\n cursor: default;\n }\n \n .p-dropdown .p-dropdown-panel {\n min-width: 100%;\n }\n \n .p-dropdown-panel {\n position: absolute;\n top: 0;\n left: 0;\n }\n \n .p-dropdown-items-wrapper {\n overflow: auto;\n }\n \n .p-dropdown-item {\n cursor: pointer;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n }\n \n .p-dropdown-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-dropdown-filter {\n width: 100%;\n }\n \n .p-dropdown-filter-container {\n position: relative;\n }\n \n .p-dropdown-clear-icon,\n .p-dropdown-filter-icon,\n .p-dropdown-filter-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-fluid .p-dropdown {\n display: flex;\n }\n \n .p-fluid .p-dropdown .p-dropdown-label {\n width: 1%;\n }\n}\n";
19794
19835
  var inlineStyles$h = {
19795
- wrapper: function wrapper(_ref7) {
19796
- var props = _ref7.props;
19836
+ wrapper: function wrapper(_ref8) {
19837
+ var props = _ref8.props;
19797
19838
  return {
19798
19839
  maxHeight: props.scrollHeight || 'auto'
19799
19840
  };
19800
19841
  },
19801
- panel: function panel(_ref8) {
19802
- var props = _ref8.props;
19842
+ panel: function panel(_ref9) {
19843
+ var props = _ref9.props;
19803
19844
  props.panelStyle;
19804
19845
  }
19805
19846
  };
@@ -19904,7 +19945,11 @@ var DropdownItem = /*#__PURE__*/React__namespace.memo(function (props) {
19904
19945
  var itemProps = mergeProps({
19905
19946
  role: 'option',
19906
19947
  key: props.label,
19907
- className: classNames(option.className, cx('item')),
19948
+ className: classNames(option.className, cx('item', {
19949
+ selected: selected,
19950
+ disabled: disabled,
19951
+ label: label
19952
+ })),
19908
19953
  style: props.style,
19909
19954
  onClick: function onClick(e) {
19910
19955
  return _onClick(e);
@@ -20008,11 +20053,14 @@ var DropdownPanel = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__name
20008
20053
  };
20009
20054
  style = _objectSpread$1f(_objectSpread$1f({}, style), option.style);
20010
20055
  if (props.optionGroupLabel) {
20056
+ var optionGroupLabel = props.optionGroupLabel;
20011
20057
  var groupContent = props.optionGroupTemplate ? ObjectUtils.getJSXElement(props.optionGroupTemplate, option, index) : props.getOptionGroupLabel(option);
20012
20058
  var groupChildrenContent = createGroupChildren(option, style);
20013
20059
  var key = index + '_' + props.getOptionGroupRenderKey(option);
20014
20060
  var itemGroupProps = mergeProps({
20015
- className: cx('itemGroup'),
20061
+ className: cx('itemGroup', {
20062
+ optionGroupLabel: optionGroupLabel
20063
+ }),
20016
20064
  style: style
20017
20065
  }, getPTOptions('itemGroup'));
20018
20066
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
@@ -21285,7 +21333,7 @@ Paginator.displayName = 'Paginator';
21285
21333
 
21286
21334
  function ownKeys$1c(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21287
21335
  function _objectSpread$1c(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1c(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1c(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21288
- var styles$J = "\n@layer primereact {\n .p-datatable {\n position: relative;\n }\n \n .p-datatable > .p-datatable-wrapper {\n overflow: auto;\n }\n \n .p-datatable-table {\n border-spacing: 0px;\n width: 100%;\n }\n \n .p-datatable .p-sortable-disabled {\n cursor: auto;\n }\n \n .p-datatable .p-sortable-column {\n cursor: pointer;\n user-select: none;\n }\n \n .p-datatable .p-sortable-column .p-column-title,\n .p-datatable .p-sortable-column .p-sortable-column-icon,\n .p-datatable .p-sortable-column .p-sortable-column-badge {\n vertical-align: middle;\n }\n \n .p-datatable .p-sortable-column .p-sortable-column-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-datatable-selectable .p-selectable-row,\n .p-datatable-selectable-cell .p-selectable-cell {\n cursor: pointer;\n }\n \n .p-datatable-drag-selection-helper {\n position: absolute;\n z-index: 99999999;\n }\n \n /* Scrollable */\n .p-datatable-scrollable > .p-datatable-wrapper {\n position: relative;\n }\n \n .p-datatable-scrollable-table > .p-datatable-thead {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n \n .p-datatable-scrollable-table > .p-datatable-frozen-tbody {\n position: sticky;\n z-index: 1;\n }\n \n .p-datatable-scrollable-table > .p-datatable-tfoot {\n position: sticky;\n bottom: 0;\n z-index: 1;\n }\n \n .p-datatable-scrollable .p-frozen-column {\n position: sticky;\n background: inherit;\n }\n \n .p-datatable-scrollable th.p-frozen-column {\n z-index: 1;\n }\n \n .p-datatable-flex-scrollable {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n \n .p-datatable-flex-scrollable > .p-datatable-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n }\n \n .p-datatable-scrollable-table > .p-datatable-tbody > .p-rowgroup-header {\n position: sticky;\n z-index: 1;\n }\n \n /* Resizable */\n .p-datatable-resizable-table > .p-datatable-thead > tr > th,\n .p-datatable-resizable-table > .p-datatable-tfoot > tr > td,\n .p-datatable-resizable-table > .p-datatable-tbody > tr > td {\n overflow: hidden;\n white-space: nowrap;\n }\n \n .p-datatable-resizable-table > .p-datatable-thead > tr > th.p-resizable-column:not(.p-frozen-column) {\n background-clip: padding-box;\n position: relative;\n }\n \n .p-datatable-resizable-table-fit > .p-datatable-thead > tr > th.p-resizable-column:last-child .p-column-resizer {\n display: none;\n }\n \n .p-datatable .p-column-resizer {\n display: block;\n position: absolute !important;\n top: 0;\n right: 0;\n margin: 0;\n width: 0.5rem;\n height: 100%;\n padding: 0px;\n cursor: col-resize;\n border: 1px solid transparent;\n }\n \n .p-datatable .p-column-header-content {\n display: flex;\n align-items: center;\n }\n \n .p-datatable .p-column-resizer-helper {\n width: 1px;\n position: absolute;\n z-index: 10;\n display: none;\n }\n \n .p-datatable .p-row-editor-init,\n .p-datatable .p-row-editor-save,\n .p-datatable .p-row-editor-cancel {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n \n /* Expand */\n .p-datatable .p-row-toggler {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n \n /* Reorder */\n .p-datatable-reorder-indicator-up,\n .p-datatable-reorder-indicator-down {\n position: absolute;\n display: none;\n }\n \n .p-reorderable-column,\n .p-datatable-reorderablerow-handle {\n cursor: move;\n }\n \n /* Loader */\n .p-datatable .p-datatable-loading-overlay {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n }\n \n /* Filter */\n .p-column-filter-row {\n display: flex;\n align-items: center;\n width: 100%;\n }\n \n .p-column-filter-menu {\n display: inline-flex;\n margin-left: auto;\n }\n \n .p-column-filter-row .p-column-filter-element {\n flex: 1 1 auto;\n width: 1%;\n }\n \n .p-column-filter-menu-button,\n .p-column-filter-clear-button {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-column-filter-overlay {\n position: absolute;\n top: 0;\n left: 0;\n }\n \n .p-column-filter-row-items {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-column-filter-row-item {\n cursor: pointer;\n }\n \n .p-column-filter-add-button,\n .p-column-filter-remove-button {\n justify-content: center;\n }\n \n .p-column-filter-add-button .p-button-label,\n .p-column-filter-remove-button .p-button-label {\n flex-grow: 0;\n }\n \n .p-column-filter-buttonbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .p-column-filter-buttonbar .p-button:not(.p-button-icon-only) {\n width: auto;\n }\n \n /* Responsive */\n .p-datatable .p-datatable-tbody > tr > td > .p-column-title {\n display: none;\n }\n \n /* VirtualScroller */\n .p-datatable-virtualscroller-spacer {\n display: flex;\n }\n \n .p-datatable .p-virtualscroller .p-virtualscroller-loading {\n transform: none !important;\n min-height: 0;\n position: sticky;\n top: 0;\n left: 0;\n }\n \n /* Alignment */\n .p-datatable .p-datatable-thead > tr > th.p-align-left > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-left,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-left {\n text-align: left;\n justify-content: flex-start;\n }\n \n .p-datatable .p-datatable-thead > tr > th.p-align-right > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-right,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-right {\n text-align: right;\n justify-content: flex-end;\n }\n \n .p-datatable .p-datatable-thead > tr > th.p-align-center > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-center,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-center {\n text-align: center;\n justify-content: center;\n }\n}\n";
21336
+ var styles$J = "\n@layer primereact {\n .p-datatable {\n position: relative;\n }\n\n .p-datatable > .p-datatable-wrapper {\n overflow: auto;\n }\n\n .p-datatable-table {\n border-spacing: 0px;\n width: 100%;\n }\n\n .p-datatable .p-sortable-disabled {\n cursor: auto;\n }\n\n .p-datatable .p-sortable-column {\n cursor: pointer;\n user-select: none;\n }\n\n .p-datatable .p-sortable-column .p-column-title,\n .p-datatable .p-sortable-column .p-sortable-column-icon,\n .p-datatable .p-sortable-column .p-sortable-column-badge {\n vertical-align: middle;\n }\n\n .p-datatable .p-sortable-column .p-sortable-column-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-datatable-selectable .p-selectable-row,\n .p-datatable-selectable-cell .p-selectable-cell {\n cursor: pointer;\n }\n\n .p-datatable-drag-selection-helper {\n position: absolute;\n z-index: 99999999;\n }\n\n /* Scrollable */\n .p-datatable-scrollable > .p-datatable-wrapper {\n position: relative;\n }\n\n .p-datatable-scrollable-table > .p-datatable-thead {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n\n .p-datatable-scrollable-table > .p-datatable-frozen-tbody {\n position: sticky;\n z-index: 1;\n }\n\n .p-datatable-scrollable-table > .p-datatable-tfoot {\n position: sticky;\n bottom: 0;\n z-index: 1;\n }\n\n .p-datatable-scrollable .p-frozen-column {\n position: sticky;\n background: inherit;\n }\n\n .p-datatable-scrollable th.p-frozen-column {\n z-index: 1;\n }\n\n .p-datatable-flex-scrollable {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .p-datatable-flex-scrollable > .p-datatable-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n }\n\n .p-datatable-scrollable-table > .p-datatable-tbody > .p-rowgroup-header {\n position: sticky;\n z-index: 1;\n }\n\n /* Resizable */\n .p-datatable-resizable-table > .p-datatable-thead > tr > th,\n .p-datatable-resizable-table > .p-datatable-tfoot > tr > td,\n .p-datatable-resizable-table > .p-datatable-tbody > tr > td {\n overflow: hidden;\n white-space: nowrap;\n }\n\n .p-datatable-resizable-table > .p-datatable-thead > tr > th.p-resizable-column:not(.p-frozen-column) {\n background-clip: padding-box;\n position: relative;\n }\n\n .p-datatable-resizable-table-fit > .p-datatable-thead > tr > th.p-resizable-column:last-child .p-column-resizer {\n display: none;\n }\n\n .p-datatable .p-column-resizer {\n display: block;\n position: absolute !important;\n top: 0;\n right: 0;\n margin: 0;\n width: 0.5rem;\n height: 100%;\n padding: 0px;\n cursor: col-resize;\n border: 1px solid transparent;\n }\n\n .p-datatable .p-column-header-content {\n display: flex;\n align-items: center;\n }\n\n .p-datatable .p-column-resizer-helper {\n width: 1px;\n position: absolute;\n z-index: 10;\n display: none;\n }\n\n .p-datatable .p-row-editor-init,\n .p-datatable .p-row-editor-save,\n .p-datatable .p-row-editor-cancel {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n\n /* Expand */\n .p-datatable .p-row-toggler {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n\n /* Reorder */\n .p-datatable-reorder-indicator-up,\n .p-datatable-reorder-indicator-down {\n position: absolute;\n display: none;\n }\n\n .p-reorderable-column,\n .p-datatable-reorderablerow-handle {\n cursor: move;\n }\n\n /* Loader */\n .p-datatable .p-datatable-loading-overlay {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n }\n\n /* Filter */\n .p-column-filter-row {\n display: flex;\n align-items: center;\n width: 100%;\n }\n\n .p-column-filter-menu {\n display: inline-flex;\n margin-left: auto;\n }\n\n .p-column-filter-row .p-column-filter-element {\n flex: 1 1 auto;\n width: 1%;\n }\n\n .p-column-filter-menu-button,\n .p-column-filter-clear-button {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n .p-column-filter-overlay {\n position: absolute;\n top: 0;\n left: 0;\n }\n\n .p-column-filter-row-items {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-column-filter-row-item {\n cursor: pointer;\n }\n\n .p-column-filter-add-button,\n .p-column-filter-remove-button {\n justify-content: center;\n }\n\n .p-column-filter-add-button .p-button-label,\n .p-column-filter-remove-button .p-button-label {\n flex-grow: 0;\n }\n\n .p-column-filter-buttonbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n\n .p-column-filter-buttonbar .p-button:not(.p-button-icon-only) {\n width: auto;\n }\n\n /* Responsive */\n .p-datatable .p-datatable-tbody > tr > td > .p-column-title {\n display: none;\n }\n\n /* VirtualScroller */\n .p-datatable-virtualscroller-spacer {\n display: flex;\n }\n\n .p-datatable .p-virtualscroller .p-virtualscroller-loading {\n transform: none !important;\n min-height: 0;\n position: sticky;\n top: 0;\n left: 0;\n }\n\n /* Alignment */\n .p-datatable .p-datatable-thead > tr > th.p-align-left > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-left,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-left {\n text-align: left;\n justify-content: flex-start;\n }\n\n .p-datatable .p-datatable-thead > tr > th.p-align-right > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-right,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-right {\n text-align: right;\n justify-content: flex-end;\n }\n\n .p-datatable .p-datatable-thead > tr > th.p-align-center > .p-column-header-content,\n .p-datatable .p-datatable-tbody > tr > td.p-align-center,\n .p-datatable .p-datatable-tfoot > tr > td.p-align-center {\n text-align: center;\n justify-content: center;\n }\n}\n";
21289
21337
  var classes$N = {
21290
21338
  root: function root(_ref) {
21291
21339
  var props = _ref.props,
@@ -21599,6 +21647,8 @@ var DataTableBase = ComponentBase.extend({
21599
21647
  onRowClick: null,
21600
21648
  onRowCollapse: null,
21601
21649
  onRowDoubleClick: null,
21650
+ onRowPointerDown: null,
21651
+ onRowPointerUp: null,
21602
21652
  onRowEditCancel: null,
21603
21653
  onRowEditChange: null,
21604
21654
  onRowEditComplete: null,
@@ -21753,7 +21803,7 @@ var RowCheckbox = /*#__PURE__*/React__namespace.memo(function (props) {
21753
21803
  if (!props.disabled) {
21754
21804
  setFocusedState(true);
21755
21805
  props.onChange(event);
21756
- event.stopPropagation();
21806
+ event.preventDefault();
21757
21807
  }
21758
21808
  };
21759
21809
  var _onKeyDown = function onKeyDown(event) {
@@ -22307,6 +22357,7 @@ var BodyCell = /*#__PURE__*/React__namespace.memo(function (props) {
22307
22357
  data: props.rowData
22308
22358
  });
22309
22359
  event.preventDefault();
22360
+ event.stopPropagation();
22310
22361
  };
22311
22362
  var onRowEditInit = function onRowEditInit(event) {
22312
22363
  props.onRowEditInit({
@@ -22770,6 +22821,20 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
22770
22821
  index: props.rowIndex
22771
22822
  });
22772
22823
  };
22824
+ var _onPointerDown = function onPointerDown(event) {
22825
+ props.onRowPointerDown({
22826
+ originalEvent: event,
22827
+ data: props.rowData,
22828
+ index: props.rowIndex
22829
+ });
22830
+ };
22831
+ var _onPointerUp = function onPointerUp(event) {
22832
+ props.onRowPointerUp({
22833
+ originalEvent: event,
22834
+ data: props.rowData,
22835
+ index: props.rowIndex
22836
+ });
22837
+ };
22773
22838
  var onRightClick = function onRightClick(event) {
22774
22839
  props.onRowRightClick({
22775
22840
  originalEvent: event,
@@ -23059,6 +23124,12 @@ var BodyRow = /*#__PURE__*/React__namespace.memo(function (props) {
23059
23124
  onDoubleClick: function onDoubleClick(e) {
23060
23125
  return _onDoubleClick(e);
23061
23126
  },
23127
+ onPointerDown: function onPointerDown(e) {
23128
+ return _onPointerDown(e);
23129
+ },
23130
+ onPointerUp: function onPointerUp(e) {
23131
+ return _onPointerUp(e);
23132
+ },
23062
23133
  onContextMenu: function onContextMenu(e) {
23063
23134
  return onRightClick(e);
23064
23135
  },
@@ -23602,7 +23673,7 @@ var TableBody = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespac
23602
23673
  }
23603
23674
  };
23604
23675
  var onRowClick = function onRowClick(event) {
23605
- if (allowCellSelection() || !allowSelection(event)) {
23676
+ if (allowCellSelection() || !allowSelection(event) || event.defaultPrevented) {
23606
23677
  return;
23607
23678
  }
23608
23679
  props.onRowClick && props.onRowClick(event);
@@ -23641,11 +23712,29 @@ var TableBody = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespac
23641
23712
  props.onRowDoubleClick(e);
23642
23713
  }
23643
23714
  };
23715
+ var onRowPointerDown = function onRowPointerDown(e) {
23716
+ var event = e.originalEvent;
23717
+ if (DomHandler.isClickable(event.target)) {
23718
+ return;
23719
+ }
23720
+ if (props.onRowPointerDown) {
23721
+ props.onRowPointerDown(e);
23722
+ }
23723
+ };
23724
+ var onRowPointerUp = function onRowPointerUp(e) {
23725
+ var event = e.originalEvent;
23726
+ if (DomHandler.isClickable(event.target)) {
23727
+ return;
23728
+ }
23729
+ if (props.onRowPointerUp) {
23730
+ props.onRowPointerUp(e);
23731
+ }
23732
+ };
23644
23733
  var onRowRightClick = function onRowRightClick(event) {
23645
- var isMultiSelection = isCheckboxSelectionModeInColumn && ObjectUtils.isEmpty(props.selection);
23646
- var data = isMultiSelection ? event.data : props.selection;
23647
23734
  if (props.onContextMenu || props.onContextMenuSelectionChange) {
23648
- if (!ObjectUtils.isEmpty(props.selection)) DomHandler.clearSelection();
23735
+ var hasSelection = ObjectUtils.isNotEmpty(props.selection);
23736
+ var data = hasSelection ? props.selection : event.data;
23737
+ if (hasSelection) DomHandler.clearSelection();
23649
23738
  if (props.onContextMenuSelectionChange) {
23650
23739
  props.onContextMenuSelectionChange({
23651
23740
  originalEvent: event.originalEvent,
@@ -24030,6 +24119,8 @@ var TableBody = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespac
24030
24119
  onRadioChange: onRadioChange,
24031
24120
  onRowClick: onRowClick,
24032
24121
  onRowDoubleClick: onRowDoubleClick,
24122
+ onRowPointerDown: onRowPointerDown,
24123
+ onRowPointerUp: onRowPointerUp,
24033
24124
  onRowDragEnd: onRowDragEnd,
24034
24125
  onRowDragLeave: onRowDragLeave,
24035
24126
  onRowDragOver: onRowDragOver,
@@ -24827,42 +24918,45 @@ var ColumnFilter = /*#__PURE__*/React__namespace.memo(function (props) {
24827
24918
  return props.display === 'menu' ? createFilterElement(fieldConstraint, index) : null;
24828
24919
  };
24829
24920
  var createMenuButton = function createMenuButton() {
24830
- if (showMenuButton()) {
24831
- var filterIconProps = mergeProps({
24832
- 'aria-hidden': true
24833
- }, getColumnPTOptions('filterIcon'));
24834
- var icon = props.filterIcon || /*#__PURE__*/React__namespace.createElement(FilterIcon, filterIconProps);
24835
- var columnFilterIcon = IconUtils.getJSXIcon(icon, _objectSpread$15({}, filterIconProps), {
24836
- props: props
24837
- });
24838
- var label = filterLabel();
24839
- var filterMenuButtonProps = mergeProps({
24840
- type: 'button',
24841
- className: cx('filterMenuButton', {
24842
- overlayVisibleState: overlayVisibleState,
24843
- hasFilter: hasFilter
24844
- }),
24845
- 'aria-haspopup': true,
24846
- 'aria-expanded': overlayVisibleState,
24847
- onClick: function onClick(e) {
24848
- return toggleMenu();
24849
- },
24850
- onKeyDown: function onKeyDown(e) {
24851
- return onToggleButtonKeyDown(e);
24852
- },
24853
- 'aria-label': label
24854
- }, getColumnPTOptions('filterMenuButton', {
24855
- context: {
24856
- active: hasFilter()
24857
- }
24858
- }));
24859
- return /*#__PURE__*/React__namespace.createElement("button", _extends({
24860
- ref: iconRef
24861
- }, filterMenuButtonProps), columnFilterIcon, /*#__PURE__*/React__namespace.createElement(Ripple, null));
24921
+ if (!showMenuButton()) {
24922
+ return null;
24862
24923
  }
24863
- return null;
24924
+ var filterIconProps = mergeProps({
24925
+ 'aria-hidden': true
24926
+ }, getColumnPTOptions('filterIcon'));
24927
+ var icon = props.filterIcon || /*#__PURE__*/React__namespace.createElement(FilterIcon, filterIconProps);
24928
+ var columnFilterIcon = IconUtils.getJSXIcon(icon, _objectSpread$15({}, filterIconProps), {
24929
+ props: props
24930
+ });
24931
+ var label = filterLabel();
24932
+ var filterMenuButtonProps = mergeProps({
24933
+ type: 'button',
24934
+ className: cx('filterMenuButton', {
24935
+ overlayVisibleState: overlayVisibleState,
24936
+ hasFilter: hasFilter
24937
+ }),
24938
+ 'aria-haspopup': true,
24939
+ 'aria-expanded': overlayVisibleState,
24940
+ onClick: function onClick(e) {
24941
+ return toggleMenu();
24942
+ },
24943
+ onKeyDown: function onKeyDown(e) {
24944
+ return onToggleButtonKeyDown(e);
24945
+ },
24946
+ 'aria-label': label
24947
+ }, getColumnPTOptions('filterMenuButton', {
24948
+ context: {
24949
+ active: hasFilter()
24950
+ }
24951
+ }));
24952
+ return /*#__PURE__*/React__namespace.createElement("button", _extends({
24953
+ ref: iconRef
24954
+ }, filterMenuButtonProps), columnFilterIcon, /*#__PURE__*/React__namespace.createElement(Ripple, null));
24864
24955
  };
24865
24956
  var createClearButton = function createClearButton() {
24957
+ if (!showMenuButton()) {
24958
+ return null;
24959
+ }
24866
24960
  var filterClearIconProps = mergeProps({
24867
24961
  'aria-hidden': true
24868
24962
  }, getColumnPTOptions('filterClearIcon'));
@@ -25574,19 +25668,20 @@ var HeaderCell = /*#__PURE__*/React__namespace.memo(function (props) {
25574
25668
  var rowSpan = getColumnProp('rowSpan');
25575
25669
  var ariaSort = getAriaSort(sortMeta);
25576
25670
  var headerTooltip = getColumnProp('headerTooltip');
25671
+ var headerClassName = getColumnProp('headerClassName');
25577
25672
  var hasTooltip = ObjectUtils.isNotEmpty(headerTooltip);
25578
25673
  var headerTooltipOptions = getColumnProp('headerTooltipOptions');
25579
25674
  var resizer = createResizer();
25580
25675
  var header = createHeader(sortMeta);
25581
25676
  var headerCellProps = mergeProps({
25582
- className: cx('headerCell', {
25677
+ className: classNames(headerClassName, cx('headerCell', {
25583
25678
  headerProps: props,
25584
25679
  frozen: frozen,
25585
25680
  sortMeta: sortMeta,
25586
25681
  align: align,
25587
25682
  _isSortableDisabled: _isSortableDisabled,
25588
25683
  getColumnProp: getColumnProp
25589
- }),
25684
+ })),
25590
25685
  style: style,
25591
25686
  role: 'columnheader',
25592
25687
  onClick: function onClick(e) {
@@ -27353,6 +27448,8 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
27353
27448
  onRowClick: props.onRowClick,
27354
27449
  onRowCollapse: props.onRowCollapse,
27355
27450
  onRowDoubleClick: props.onRowDoubleClick,
27451
+ onRowPointerDown: props.onRowPointerDown,
27452
+ onRowPointerUp: props.onRowPointerUp,
27356
27453
  onRowEditCancel: props.onRowEditCancel,
27357
27454
  onRowEditChange: props.onRowEditChange,
27358
27455
  onRowEditComplete: props.onRowEditComplete,
@@ -27412,6 +27509,8 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
27412
27509
  tabIndex: props.tabIndex,
27413
27510
  onRowClick: props.onRowClick,
27414
27511
  onRowDoubleClick: props.onRowDoubleClick,
27512
+ onRowPointerDown: props.onRowPointerDown,
27513
+ onRowPointerUp: props.onRowPointerUp,
27415
27514
  onRowMouseEnter: props.onRowMouseEnter,
27416
27515
  onRowMouseLeave: props.onRowMouseLeave,
27417
27516
  onCellClick: props.onCellClick,
@@ -27666,36 +27765,21 @@ var DataTable = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
27666
27765
  DataTable.displayName = 'DataTable';
27667
27766
 
27668
27767
  var classes$M = {
27669
- option: {
27670
- root: 'p-dataview-layout-options p-selectbutton p-buttonset',
27671
- listButton: function listButton(_ref) {
27672
- var props = _ref.props;
27673
- return classNames('p-button p-button-icon-only', {
27674
- 'p-highlight': props.layout === 'list'
27675
- });
27676
- },
27677
- gridButton: function gridButton(_ref2) {
27678
- var props = _ref2.props;
27679
- return classNames('p-button p-button-icon-only', {
27680
- 'p-highlight': props.layout === 'grid'
27681
- });
27682
- }
27683
- },
27684
27768
  loadingIcon: 'p-dataview-loading-icon',
27685
27769
  loadingOverlay: 'p-dataview-loading-overlay p-component-overlay',
27686
27770
  emptyMessage: 'p-col-12 col-12 p-dataview-emptymessage',
27687
27771
  header: 'p-dataview-header',
27688
27772
  footer: 'p-dataview-footer',
27689
27773
  content: 'p-dataview-content',
27690
- grid: function grid(_ref3) {
27691
- var props = _ref3.props;
27774
+ grid: function grid(_ref) {
27775
+ var props = _ref.props;
27692
27776
  return classNames('p-grid grid', {
27693
27777
  'p-nogutter grid-nogutter': !props.gutter
27694
27778
  });
27695
27779
  },
27696
- root: function root(_ref4) {
27780
+ root: function root(_ref2) {
27697
27781
  var _classNames;
27698
- var props = _ref4.props;
27782
+ var props = _ref2.props;
27699
27783
  return classNames('p-dataview p-component', (_classNames = {}, _defineProperty(_classNames, "p-dataview-".concat(props.layout), !!props.layout), _defineProperty(_classNames, 'p-dataview-loading', props.loading), _classNames));
27700
27784
  }
27701
27785
  };
@@ -27752,6 +27836,23 @@ var DataViewLayoutOptionsBase = ComponentBase.extend({
27752
27836
  gridIcon: null,
27753
27837
  onChange: null,
27754
27838
  children: undefined
27839
+ },
27840
+ css: {
27841
+ classes: {
27842
+ root: 'p-dataview-layout-options p-selectbutton p-buttonset',
27843
+ listButton: function listButton(_ref3) {
27844
+ var props = _ref3.props;
27845
+ return classNames('p-button p-button-icon-only', {
27846
+ 'p-highlight': props.layout === 'list'
27847
+ });
27848
+ },
27849
+ gridButton: function gridButton(_ref4) {
27850
+ var props = _ref4.props;
27851
+ return classNames('p-button p-button-icon-only', {
27852
+ 'p-highlight': props.layout === 'grid'
27853
+ });
27854
+ }
27855
+ }
27755
27856
  }
27756
27857
  });
27757
27858
 
@@ -27786,18 +27887,18 @@ var DataViewLayoutOptions = /*#__PURE__*/React__namespace.memo(function (inProps
27786
27887
  var rootProps = mergeProps({
27787
27888
  id: props.id,
27788
27889
  style: props.style,
27789
- className: classNames(props.className, cx('option.root'))
27890
+ className: classNames(props.className, cx('root'))
27790
27891
  }, DataViewLayoutOptionsBase.getOtherProps(props), ptm('root'));
27791
27892
  var listButtonProps = mergeProps({
27792
27893
  type: 'button',
27793
- className: cx('option.listButton'),
27894
+ className: cx('listButton'),
27794
27895
  onClick: function onClick(event) {
27795
27896
  return changeLayout(event, 'list');
27796
27897
  }
27797
27898
  }, ptm('listButton'));
27798
27899
  var gridButtonProps = mergeProps({
27799
27900
  type: 'button',
27800
- className: cx('option.gridButton'),
27901
+ className: cx('gridButton'),
27801
27902
  onClick: function onClick(event) {
27802
27903
  return changeLayout(event, 'grid');
27803
27904
  }
@@ -28406,7 +28507,7 @@ var classes$J = {
28406
28507
  toolbar: 'p-editor-toolbar',
28407
28508
  content: 'p-editor-content'
28408
28509
  };
28409
- var styles$F = "\n/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */\n.ql-container {\n box-sizing: border-box;\n font-family: Helvetica, Arial, sans-serif;\n font-size: 13px;\n height: 100%;\n margin: 0px;\n position: relative;\n}\n.ql-container.ql-disabled .ql-tooltip {\n visibility: hidden;\n}\n.ql-container.ql-disabled .ql-editor ul[data-checked] > li::before {\n pointer-events: none;\n}\n.ql-clipboard {\n left: -100000px;\n height: 1px;\n overflow-y: hidden;\n position: absolute;\n top: 50%;\n}\n.ql-clipboard p {\n margin: 0;\n padding: 0;\n}\n.ql-editor {\n box-sizing: border-box;\n line-height: 1.42;\n height: 100%;\n outline: none;\n overflow-y: auto;\n padding: 12px 15px;\n tab-size: 4;\n -moz-tab-size: 4;\n text-align: left;\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n.ql-editor > * {\n cursor: text;\n}\n.ql-editor p,\n.ql-editor ol,\n.ql-editor ul,\n.ql-editor pre,\n.ql-editor blockquote,\n.ql-editor h1,\n.ql-editor h2,\n.ql-editor h3,\n.ql-editor h4,\n.ql-editor h5,\n.ql-editor h6 {\n margin: 0;\n padding: 0;\n counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol,\n.ql-editor ul {\n padding-left: 1.5em;\n}\n.ql-editor ol > li,\n.ql-editor ul > li {\n list-style-type: none;\n}\n.ql-editor ul > li::before {\n content: \"\\2022\";\n}\n.ql-editor ul[data-checked=\"true\"],\n.ql-editor ul[data-checked=\"false\"] {\n pointer-events: none;\n}\n.ql-editor ul[data-checked=\"true\"] > li *,\n.ql-editor ul[data-checked=\"false\"] > li * {\n pointer-events: all;\n}\n.ql-editor ul[data-checked=\"true\"] > li::before,\n.ql-editor ul[data-checked=\"false\"] > li::before {\n color: #777;\n cursor: pointer;\n pointer-events: all;\n}\n.ql-editor ul[data-checked=\"true\"] > li::before {\n content: \"\\2611\";\n}\n.ql-editor ul[data-checked=\"false\"] > li::before {\n content: \"\\2610\";\n}\n.ql-editor li::before {\n display: inline-block;\n white-space: nowrap;\n width: 1.2em;\n}\n.ql-editor li:not(.ql-direction-rtl)::before {\n margin-left: -1.5em;\n margin-right: 0.3em;\n text-align: right;\n}\n.ql-editor li.ql-direction-rtl::before {\n margin-left: 0.3em;\n margin-right: -1.5em;\n}\n.ql-editor ol li:not(.ql-direction-rtl),\n.ql-editor ul li:not(.ql-direction-rtl) {\n padding-left: 1.5em;\n}\n.ql-editor ol li.ql-direction-rtl,\n.ql-editor ul li.ql-direction-rtl {\n padding-right: 1.5em;\n}\n.ql-editor ol li {\n counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n counter-increment: list-0;\n}\n.ql-editor ol li:before {\n content: counter(list-0, decimal) \". \";\n}\n.ql-editor ol li.ql-indent-1 {\n counter-increment: list-1;\n}\n.ql-editor ol li.ql-indent-1:before {\n content: counter(list-1, lower-alpha) \". \";\n}\n.ql-editor ol li.ql-indent-1 {\n counter-reset: list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-2 {\n counter-increment: list-2;\n}\n.ql-editor ol li.ql-indent-2:before {\n content: counter(list-2, lower-roman) \". \";\n}\n.ql-editor ol li.ql-indent-2 {\n counter-reset: list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-3 {\n counter-increment: list-3;\n}\n.ql-editor ol li.ql-indent-3:before {\n content: counter(list-3, decimal) \". \";\n}\n.ql-editor ol li.ql-indent-3 {\n counter-reset: list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-4 {\n counter-increment: list-4;\n}\n.ql-editor ol li.ql-indent-4:before {\n content: counter(list-4, lower-alpha) \". \";\n}\n.ql-editor ol li.ql-indent-4 {\n counter-reset: list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-5 {\n counter-increment: list-5;\n}\n.ql-editor ol li.ql-indent-5:before {\n content: counter(list-5, lower-roman) \". \";\n}\n.ql-editor ol li.ql-indent-5 {\n counter-reset: list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-6 {\n counter-increment: list-6;\n}\n.ql-editor ol li.ql-indent-6:before {\n content: counter(list-6, decimal) \". \";\n}\n.ql-editor ol li.ql-indent-6 {\n counter-reset: list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-7 {\n counter-increment: list-7;\n}\n.ql-editor ol li.ql-indent-7:before {\n content: counter(list-7, lower-alpha) \". \";\n}\n.ql-editor ol li.ql-indent-7 {\n counter-reset: list-8 list-9;\n}\n.ql-editor ol li.ql-indent-8 {\n counter-increment: list-8;\n}\n.ql-editor ol li.ql-indent-8:before {\n content: counter(list-8, lower-roman) \". \";\n}\n.ql-editor ol li.ql-indent-8 {\n counter-reset: list-9;\n}\n.ql-editor ol li.ql-indent-9 {\n counter-increment: list-9;\n}\n.ql-editor ol li.ql-indent-9:before {\n content: counter(list-9, decimal) \". \";\n}\n.ql-editor .ql-indent-1:not(.ql-direction-rtl) {\n padding-left: 3em;\n}\n.ql-editor li.ql-indent-1:not(.ql-direction-rtl) {\n padding-left: 4.5em;\n}\n.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right {\n padding-right: 3em;\n}\n.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right {\n padding-right: 4.5em;\n}\n.ql-editor .ql-indent-2:not(.ql-direction-rtl) {\n padding-left: 6em;\n}\n.ql-editor li.ql-indent-2:not(.ql-direction-rtl) {\n padding-left: 7.5em;\n}\n.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right {\n padding-right: 6em;\n}\n.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right {\n padding-right: 7.5em;\n}\n.ql-editor .ql-indent-3:not(.ql-direction-rtl) {\n padding-left: 9em;\n}\n.ql-editor li.ql-indent-3:not(.ql-direction-rtl) {\n padding-left: 10.5em;\n}\n.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right {\n padding-right: 9em;\n}\n.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right {\n padding-right: 10.5em;\n}\n.ql-editor .ql-indent-4:not(.ql-direction-rtl) {\n padding-left: 12em;\n}\n.ql-editor li.ql-indent-4:not(.ql-direction-rtl) {\n padding-left: 13.5em;\n}\n.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right {\n padding-right: 12em;\n}\n.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right {\n padding-right: 13.5em;\n}\n.ql-editor .ql-indent-5:not(.ql-direction-rtl) {\n padding-left: 15em;\n}\n.ql-editor li.ql-indent-5:not(.ql-direction-rtl) {\n padding-left: 16.5em;\n}\n.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right {\n padding-right: 15em;\n}\n.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right {\n padding-right: 16.5em;\n}\n.ql-editor .ql-indent-6:not(.ql-direction-rtl) {\n padding-left: 18em;\n}\n.ql-editor li.ql-indent-6:not(.ql-direction-rtl) {\n padding-left: 19.5em;\n}\n.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right {\n padding-right: 18em;\n}\n.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right {\n padding-right: 19.5em;\n}\n.ql-editor .ql-indent-7:not(.ql-direction-rtl) {\n padding-left: 21em;\n}\n.ql-editor li.ql-indent-7:not(.ql-direction-rtl) {\n padding-left: 22.5em;\n}\n.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right {\n padding-right: 21em;\n}\n.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right {\n padding-right: 22.5em;\n}\n.ql-editor .ql-indent-8:not(.ql-direction-rtl) {\n padding-left: 24em;\n}\n.ql-editor li.ql-indent-8:not(.ql-direction-rtl) {\n padding-left: 25.5em;\n}\n.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right {\n padding-right: 24em;\n}\n.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right {\n padding-right: 25.5em;\n}\n.ql-editor .ql-indent-9:not(.ql-direction-rtl) {\n padding-left: 27em;\n}\n.ql-editor li.ql-indent-9:not(.ql-direction-rtl) {\n padding-left: 28.5em;\n}\n.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right {\n padding-right: 27em;\n}\n.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right {\n padding-right: 28.5em;\n}\n.ql-editor .ql-video {\n display: block;\n max-width: 100%;\n}\n.ql-editor .ql-video.ql-align-center {\n margin: 0 auto;\n}\n.ql-editor .ql-video.ql-align-right {\n margin: 0 0 0 auto;\n}\n.ql-editor .ql-bg-black {\n background-color: #000;\n}\n.ql-editor .ql-bg-red {\n background-color: #e60000;\n}\n.ql-editor .ql-bg-orange {\n background-color: #f90;\n}\n.ql-editor .ql-bg-yellow {\n background-color: #ff0;\n}\n.ql-editor .ql-bg-green {\n background-color: #008a00;\n}\n.ql-editor .ql-bg-blue {\n background-color: #06c;\n}\n.ql-editor .ql-bg-purple {\n background-color: #93f;\n}\n.ql-editor .ql-color-white {\n color: #fff;\n}\n.ql-editor .ql-color-red {\n color: #e60000;\n}\n.ql-editor .ql-color-orange {\n color: #f90;\n}\n.ql-editor .ql-color-yellow {\n color: #ff0;\n}\n.ql-editor .ql-color-green {\n color: #008a00;\n}\n.ql-editor .ql-color-blue {\n color: #06c;\n}\n.ql-editor .ql-color-purple {\n color: #93f;\n}\n.ql-editor .ql-font-serif {\n font-family: Georgia, Times New Roman, serif;\n}\n.ql-editor .ql-font-monospace {\n font-family: Monaco, Courier New, monospace;\n}\n.ql-editor .ql-size-small {\n font-size: 0.75em;\n}\n.ql-editor .ql-size-large {\n font-size: 1.5em;\n}\n.ql-editor .ql-size-huge {\n font-size: 2.5em;\n}\n.ql-editor .ql-direction-rtl {\n direction: rtl;\n text-align: inherit;\n}\n.ql-editor .ql-align-center {\n text-align: center;\n}\n.ql-editor .ql-align-justify {\n text-align: justify;\n}\n.ql-editor .ql-align-right {\n text-align: right;\n}\n.ql-editor.ql-blank::before {\n color: rgba(0, 0, 0, 0.6);\n content: attr(data-placeholder);\n font-style: italic;\n left: 15px;\n pointer-events: none;\n position: absolute;\n right: 15px;\n}\n.ql-snow.ql-toolbar:after,\n.ql-snow .ql-toolbar:after {\n clear: both;\n content: \"\";\n display: table;\n}\n.ql-snow.ql-toolbar button,\n.ql-snow .ql-toolbar button {\n background: none;\n border: none;\n cursor: pointer;\n display: inline-block;\n float: left;\n height: 24px;\n padding: 3px 5px;\n width: 28px;\n}\n.ql-snow.ql-toolbar button svg,\n.ql-snow .ql-toolbar button svg {\n float: left;\n height: 100%;\n}\n.ql-snow.ql-toolbar button:active:hover,\n.ql-snow .ql-toolbar button:active:hover {\n outline: none;\n}\n.ql-snow.ql-toolbar input.ql-image[type=\"file\"],\n.ql-snow .ql-toolbar input.ql-image[type=\"file\"] {\n display: none;\n}\n.ql-snow.ql-toolbar button:hover,\n.ql-snow .ql-toolbar button:hover,\n.ql-snow.ql-toolbar button:focus,\n.ql-snow .ql-toolbar button:focus,\n.ql-snow.ql-toolbar button.ql-active,\n.ql-snow .ql-toolbar button.ql-active,\n.ql-snow.ql-toolbar .ql-picker-label:hover,\n.ql-snow .ql-toolbar .ql-picker-label:hover,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active,\n.ql-snow.ql-toolbar .ql-picker-item:hover,\n.ql-snow .ql-toolbar .ql-picker-item:hover,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected {\n color: #06c;\n}\n.ql-snow.ql-toolbar button:hover .ql-fill,\n.ql-snow .ql-toolbar button:hover .ql-fill,\n.ql-snow.ql-toolbar button:focus .ql-fill,\n.ql-snow .ql-toolbar button:focus .ql-fill,\n.ql-snow.ql-toolbar button.ql-active .ql-fill,\n.ql-snow .ql-toolbar button.ql-active .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,\n.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill {\n fill: #06c;\n}\n.ql-snow.ql-toolbar button:hover .ql-stroke,\n.ql-snow .ql-toolbar button:hover .ql-stroke,\n.ql-snow.ql-toolbar button:focus .ql-stroke,\n.ql-snow .ql-toolbar button:focus .ql-stroke,\n.ql-snow.ql-toolbar button.ql-active .ql-stroke,\n.ql-snow .ql-toolbar button.ql-active .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,\n.ql-snow.ql-toolbar button:hover .ql-stroke-miter,\n.ql-snow .ql-toolbar button:hover .ql-stroke-miter,\n.ql-snow.ql-toolbar button:focus .ql-stroke-miter,\n.ql-snow .ql-toolbar button:focus .ql-stroke-miter,\n.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,\n.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter {\n stroke: #06c;\n}\n@media (pointer: coarse) {\n .ql-snow.ql-toolbar button:hover:not(.ql-active),\n .ql-snow .ql-toolbar button:hover:not(.ql-active) {\n color: #444;\n }\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill {\n fill: #444;\n }\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter {\n stroke: #444;\n }\n}\n.ql-snow {\n box-sizing: border-box;\n}\n.ql-snow * {\n box-sizing: border-box;\n}\n.ql-snow .ql-hidden {\n display: none;\n}\n.ql-snow .ql-out-bottom,\n.ql-snow .ql-out-top {\n visibility: hidden;\n}\n.ql-snow .ql-tooltip {\n position: absolute;\n transform: translateY(10px);\n}\n.ql-snow .ql-tooltip a {\n cursor: pointer;\n text-decoration: none;\n}\n.ql-snow .ql-tooltip.ql-flip {\n transform: translateY(-10px);\n}\n.ql-snow .ql-formats {\n display: inline-block;\n vertical-align: middle;\n}\n.ql-snow .ql-formats:after {\n clear: both;\n content: \"\";\n display: table;\n}\n.ql-snow .ql-stroke {\n fill: none;\n stroke: #444;\n stroke-linecap: round;\n stroke-linejoin: round;\n stroke-width: 2;\n}\n.ql-snow .ql-stroke-miter {\n fill: none;\n stroke: #444;\n stroke-miterlimit: 10;\n stroke-width: 2;\n}\n.ql-snow .ql-fill,\n.ql-snow .ql-stroke.ql-fill {\n fill: #444;\n}\n.ql-snow .ql-empty {\n fill: none;\n}\n.ql-snow .ql-even {\n fill-rule: evenodd;\n}\n.ql-snow .ql-thin,\n.ql-snow .ql-stroke.ql-thin {\n stroke-width: 1;\n}\n.ql-snow .ql-transparent {\n opacity: 0.4;\n}\n.ql-snow .ql-direction svg:last-child {\n display: none;\n}\n.ql-snow .ql-direction.ql-active svg:last-child {\n display: inline;\n}\n.ql-snow .ql-direction.ql-active svg:first-child {\n display: none;\n}\n.ql-snow .ql-editor h1 {\n font-size: 2em;\n}\n.ql-snow .ql-editor h2 {\n font-size: 1.5em;\n}\n.ql-snow .ql-editor h3 {\n font-size: 1.17em;\n}\n.ql-snow .ql-editor h4 {\n font-size: 1em;\n}\n.ql-snow .ql-editor h5 {\n font-size: 0.83em;\n}\n.ql-snow .ql-editor h6 {\n font-size: 0.67em;\n}\n.ql-snow .ql-editor a {\n text-decoration: underline;\n}\n.ql-snow .ql-editor blockquote {\n border-left: 4px solid #ccc;\n margin-bottom: 5px;\n margin-top: 5px;\n padding-left: 16px;\n}\n.ql-snow .ql-editor code,\n.ql-snow .ql-editor pre {\n background-color: #f0f0f0;\n border-radius: 3px;\n}\n.ql-snow .ql-editor pre {\n white-space: pre-wrap;\n margin-bottom: 5px;\n margin-top: 5px;\n padding: 5px 10px;\n}\n.ql-snow .ql-editor code {\n font-size: 85%;\n padding: 2px 4px;\n}\n.ql-snow .ql-editor pre.ql-syntax {\n background-color: #23241f;\n color: #f8f8f2;\n overflow: visible;\n}\n.ql-snow .ql-editor img {\n max-width: 100%;\n}\n.ql-snow .ql-picker {\n color: #444;\n display: inline-block;\n float: left;\n font-size: 14px;\n font-weight: 500;\n height: 24px;\n position: relative;\n vertical-align: middle;\n}\n.ql-snow .ql-picker-label {\n cursor: pointer;\n display: inline-block;\n height: 100%;\n padding-left: 8px;\n padding-right: 2px;\n position: relative;\n width: 100%;\n}\n.ql-snow .ql-picker-label::before {\n display: inline-block;\n line-height: 22px;\n}\n.ql-snow .ql-picker-options {\n background-color: #fff;\n display: none;\n min-width: 100%;\n padding: 4px 8px;\n position: absolute;\n white-space: nowrap;\n}\n.ql-snow .ql-picker-options .ql-picker-item {\n cursor: pointer;\n display: block;\n padding-bottom: 5px;\n padding-top: 5px;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label {\n color: #ccc;\n z-index: 2;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill {\n fill: #ccc;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke {\n stroke: #ccc;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-options {\n display: block;\n margin-top: -1px;\n top: 100%;\n z-index: 1;\n}\n.ql-snow .ql-color-picker,\n.ql-snow .ql-icon-picker {\n width: 28px;\n}\n.ql-snow .ql-color-picker .ql-picker-label,\n.ql-snow .ql-icon-picker .ql-picker-label {\n padding: 2px 4px;\n}\n.ql-snow .ql-color-picker .ql-picker-label svg,\n.ql-snow .ql-icon-picker .ql-picker-label svg {\n right: 4px;\n}\n.ql-snow .ql-icon-picker .ql-picker-options {\n padding: 4px 0px;\n}\n.ql-snow .ql-icon-picker .ql-picker-item {\n height: 24px;\n width: 24px;\n padding: 2px 4px;\n}\n.ql-snow .ql-color-picker .ql-picker-options {\n padding: 3px 5px;\n width: 152px;\n}\n.ql-snow .ql-color-picker .ql-picker-item {\n border: 1px solid transparent;\n float: left;\n height: 16px;\n margin: 2px;\n padding: 0px;\n width: 16px;\n}\n.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg {\n position: absolute;\n margin-top: -9px;\n right: 0;\n top: 50%;\n width: 18px;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"])::before {\n content: attr(data-label);\n}\n.ql-snow .ql-picker.ql-header {\n width: 98px;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item::before {\n content: \"Normal\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]::before {\n content: \"Heading 1\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]::before {\n content: \"Heading 2\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]::before {\n content: \"Heading 3\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]::before {\n content: \"Heading 4\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]::before {\n content: \"Heading 5\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]::before {\n content: \"Heading 6\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]::before {\n font-size: 2em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]::before {\n font-size: 1.5em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]::before {\n font-size: 1.17em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]::before {\n font-size: 1em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]::before {\n font-size: 0.83em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]::before {\n font-size: 0.67em;\n}\n.ql-snow .ql-picker.ql-font {\n width: 108px;\n}\n.ql-snow .ql-picker.ql-font .ql-picker-label::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item::before {\n content: \"Sans Serif\";\n}\n.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=\"serif\"]::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"serif\"]::before {\n content: \"Serif\";\n}\n.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=\"monospace\"]::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"monospace\"]::before {\n content: \"Monospace\";\n}\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"serif\"]::before {\n font-family: Georgia, Times New Roman, serif;\n}\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"monospace\"]::before {\n font-family: Monaco, Courier New, monospace;\n}\n.ql-snow .ql-picker.ql-size {\n width: 98px;\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item::before {\n content: \"Normal\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=\"small\"]::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"small\"]::before {\n content: \"Small\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=\"large\"]::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"large\"]::before {\n content: \"Large\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=\"huge\"]::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"huge\"]::before {\n content: \"Huge\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"small\"]::before {\n font-size: 10px;\n}\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"large\"]::before {\n font-size: 18px;\n}\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"huge\"]::before {\n font-size: 32px;\n}\n.ql-snow .ql-color-picker.ql-background .ql-picker-item {\n background-color: #fff;\n}\n.ql-snow .ql-color-picker.ql-color .ql-picker-item {\n background-color: #000;\n}\n.ql-toolbar.ql-snow {\n border: 1px solid #ccc;\n box-sizing: border-box;\n font-family: \"Helvetica Neue\", \"Helvetica\", \"Arial\", sans-serif;\n padding: 8px;\n}\n.ql-toolbar.ql-snow .ql-formats {\n margin-right: 15px;\n}\n.ql-toolbar.ql-snow .ql-picker-label {\n border: 1px solid transparent;\n}\n.ql-toolbar.ql-snow .ql-picker-options {\n border: 1px solid transparent;\n box-shadow: rgba(0, 0, 0, 0.2) 0 2px 8px;\n}\n.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label {\n border-color: #ccc;\n}\n.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options {\n border-color: #ccc;\n}\n.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,\n.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover {\n border-color: #000;\n}\n.ql-toolbar.ql-snow + .ql-container.ql-snow {\n border-top: 0px;\n}\n.ql-snow .ql-tooltip {\n background-color: #fff;\n border: 1px solid #ccc;\n box-shadow: 0px 0px 5px #ddd;\n color: #444;\n padding: 5px 12px;\n white-space: nowrap;\n}\n.ql-snow .ql-tooltip::before {\n content: \"Visit URL:\";\n line-height: 26px;\n margin-right: 8px;\n}\n.ql-snow .ql-tooltip input[type=\"text\"] {\n display: none;\n border: 1px solid #ccc;\n font-size: 13px;\n height: 26px;\n margin: 0px;\n padding: 3px 5px;\n width: 170px;\n}\n.ql-snow .ql-tooltip a.ql-preview {\n display: inline-block;\n max-width: 200px;\n overflow-x: hidden;\n text-overflow: ellipsis;\n vertical-align: top;\n}\n.ql-snow .ql-tooltip a.ql-action::after {\n border-right: 1px solid #ccc;\n content: \"Edit\";\n margin-left: 16px;\n padding-right: 8px;\n}\n.ql-snow .ql-tooltip a.ql-remove::before {\n content: \"Remove\";\n margin-left: 8px;\n}\n.ql-snow .ql-tooltip a {\n line-height: 26px;\n}\n.ql-snow .ql-tooltip.ql-editing a.ql-preview,\n.ql-snow .ql-tooltip.ql-editing a.ql-remove {\n display: none;\n}\n.ql-snow .ql-tooltip.ql-editing input[type=\"text\"] {\n display: inline-block;\n}\n.ql-snow .ql-tooltip.ql-editing a.ql-action::after {\n border-right: 0px;\n content: \"Save\";\n padding-right: 0px;\n}\n.ql-snow .ql-tooltip[data-mode=\"link\"]::before {\n content: \"Enter link:\";\n}\n.ql-snow .ql-tooltip[data-mode=\"formula\"]::before {\n content: \"Enter formula:\";\n}\n.ql-snow .ql-tooltip[data-mode=\"video\"]::before {\n content: \"Enter video:\";\n}\n.ql-snow a {\n color: #06c;\n}\n.ql-container.ql-snow {\n border: 1px solid #ccc;\n}\n";
28510
+ var styles$F = "\n/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */\n.ql-container {\n box-sizing: border-box;\n font-family: Helvetica, Arial, sans-serif;\n font-size: 13px;\n height: 100%;\n margin: 0px;\n position: relative;\n}\n.ql-container.ql-disabled .ql-tooltip {\n visibility: hidden;\n}\n.ql-container.ql-disabled .ql-editor ul[data-checked] > li::before {\n pointer-events: none;\n}\n.ql-clipboard {\n left: -100000px;\n height: 1px;\n overflow-y: hidden;\n position: absolute;\n top: 50%;\n}\n.ql-clipboard p {\n margin: 0;\n padding: 0;\n}\n.ql-editor {\n box-sizing: border-box;\n line-height: 1.42;\n height: 100%;\n outline: none;\n overflow-y: auto;\n padding: 12px 15px;\n tab-size: 4;\n -moz-tab-size: 4;\n text-align: left;\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n.ql-editor > * {\n cursor: text;\n}\n.ql-editor p,\n.ql-editor ol,\n.ql-editor ul,\n.ql-editor pre,\n.ql-editor blockquote,\n.ql-editor h1,\n.ql-editor h2,\n.ql-editor h3,\n.ql-editor h4,\n.ql-editor h5,\n.ql-editor h6 {\n margin: 0;\n padding: 0;\n counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol,\n.ql-editor ul {\n padding-left: 1.5em;\n}\n.ql-editor ol > li,\n.ql-editor ul > li {\n list-style-type: none;\n}\n.ql-editor ul > li::before {\n content: \"\\2022\";\n}\n.ql-editor ul[data-checked=\"true\"],\n.ql-editor ul[data-checked=\"false\"] {\n pointer-events: none;\n}\n.ql-editor ul[data-checked=\"true\"] > li *,\n.ql-editor ul[data-checked=\"false\"] > li * {\n pointer-events: all;\n}\n.ql-editor ul[data-checked=\"true\"] > li::before,\n.ql-editor ul[data-checked=\"false\"] > li::before {\n color: #777;\n cursor: pointer;\n pointer-events: all;\n}\n.ql-editor ul[data-checked=\"true\"] > li::before {\n content: \"\\2611\";\n}\n.ql-editor ul[data-checked=\"false\"] > li::before {\n content: \"\\2610\";\n}\n.ql-editor li::before {\n display: inline-block;\n white-space: nowrap;\n width: 1.2em;\n}\n.ql-editor li:not(.ql-direction-rtl)::before {\n margin-left: -1.5em;\n margin-right: 0.3em;\n text-align: right;\n}\n.ql-editor li.ql-direction-rtl::before {\n margin-left: 0.3em;\n margin-right: -1.5em;\n}\n.ql-editor ol li:not(.ql-direction-rtl),\n.ql-editor ul li:not(.ql-direction-rtl) {\n padding-left: 1.5em;\n}\n.ql-editor ol li.ql-direction-rtl,\n.ql-editor ul li.ql-direction-rtl {\n padding-right: 1.5em;\n}\n.ql-editor ol li {\n counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n counter-increment: list-0;\n}\n.ql-editor ol li:before {\n content: counter(list-0, decimal) \". \";\n}\n.ql-editor ol li.ql-indent-1 {\n counter-increment: list-1;\n}\n.ql-editor ol li.ql-indent-1:before {\n content: counter(list-1, lower-alpha) \". \";\n}\n.ql-editor ol li.ql-indent-1 {\n counter-reset: list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-2 {\n counter-increment: list-2;\n}\n.ql-editor ol li.ql-indent-2:before {\n content: counter(list-2, lower-roman) \". \";\n}\n.ql-editor ol li.ql-indent-2 {\n counter-reset: list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-3 {\n counter-increment: list-3;\n}\n.ql-editor ol li.ql-indent-3:before {\n content: counter(list-3, decimal) \". \";\n}\n.ql-editor ol li.ql-indent-3 {\n counter-reset: list-4 list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-4 {\n counter-increment: list-4;\n}\n.ql-editor ol li.ql-indent-4:before {\n content: counter(list-4, lower-alpha) \". \";\n}\n.ql-editor ol li.ql-indent-4 {\n counter-reset: list-5 list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-5 {\n counter-increment: list-5;\n}\n.ql-editor ol li.ql-indent-5:before {\n content: counter(list-5, lower-roman) \". \";\n}\n.ql-editor ol li.ql-indent-5 {\n counter-reset: list-6 list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-6 {\n counter-increment: list-6;\n}\n.ql-editor ol li.ql-indent-6:before {\n content: counter(list-6, decimal) \". \";\n}\n.ql-editor ol li.ql-indent-6 {\n counter-reset: list-7 list-8 list-9;\n}\n.ql-editor ol li.ql-indent-7 {\n counter-increment: list-7;\n}\n.ql-editor ol li.ql-indent-7:before {\n content: counter(list-7, lower-alpha) \". \";\n}\n.ql-editor ol li.ql-indent-7 {\n counter-reset: list-8 list-9;\n}\n.ql-editor ol li.ql-indent-8 {\n counter-increment: list-8;\n}\n.ql-editor ol li.ql-indent-8:before {\n content: counter(list-8, lower-roman) \". \";\n}\n.ql-editor ol li.ql-indent-8 {\n counter-reset: list-9;\n}\n.ql-editor ol li.ql-indent-9 {\n counter-increment: list-9;\n}\n.ql-editor ol li.ql-indent-9:before {\n content: counter(list-9, decimal) \". \";\n}\n.ql-editor .ql-indent-1:not(.ql-direction-rtl) {\n padding-left: 3em;\n}\n.ql-editor li.ql-indent-1:not(.ql-direction-rtl) {\n padding-left: 4.5em;\n}\n.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right {\n padding-right: 3em;\n}\n.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right {\n padding-right: 4.5em;\n}\n.ql-editor .ql-indent-2:not(.ql-direction-rtl) {\n padding-left: 6em;\n}\n.ql-editor li.ql-indent-2:not(.ql-direction-rtl) {\n padding-left: 7.5em;\n}\n.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right {\n padding-right: 6em;\n}\n.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right {\n padding-right: 7.5em;\n}\n.ql-editor .ql-indent-3:not(.ql-direction-rtl) {\n padding-left: 9em;\n}\n.ql-editor li.ql-indent-3:not(.ql-direction-rtl) {\n padding-left: 10.5em;\n}\n.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right {\n padding-right: 9em;\n}\n.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right {\n padding-right: 10.5em;\n}\n.ql-editor .ql-indent-4:not(.ql-direction-rtl) {\n padding-left: 12em;\n}\n.ql-editor li.ql-indent-4:not(.ql-direction-rtl) {\n padding-left: 13.5em;\n}\n.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right {\n padding-right: 12em;\n}\n.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right {\n padding-right: 13.5em;\n}\n.ql-editor .ql-indent-5:not(.ql-direction-rtl) {\n padding-left: 15em;\n}\n.ql-editor li.ql-indent-5:not(.ql-direction-rtl) {\n padding-left: 16.5em;\n}\n.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right {\n padding-right: 15em;\n}\n.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right {\n padding-right: 16.5em;\n}\n.ql-editor .ql-indent-6:not(.ql-direction-rtl) {\n padding-left: 18em;\n}\n.ql-editor li.ql-indent-6:not(.ql-direction-rtl) {\n padding-left: 19.5em;\n}\n.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right {\n padding-right: 18em;\n}\n.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right {\n padding-right: 19.5em;\n}\n.ql-editor .ql-indent-7:not(.ql-direction-rtl) {\n padding-left: 21em;\n}\n.ql-editor li.ql-indent-7:not(.ql-direction-rtl) {\n padding-left: 22.5em;\n}\n.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right {\n padding-right: 21em;\n}\n.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right {\n padding-right: 22.5em;\n}\n.ql-editor .ql-indent-8:not(.ql-direction-rtl) {\n padding-left: 24em;\n}\n.ql-editor li.ql-indent-8:not(.ql-direction-rtl) {\n padding-left: 25.5em;\n}\n.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right {\n padding-right: 24em;\n}\n.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right {\n padding-right: 25.5em;\n}\n.ql-editor .ql-indent-9:not(.ql-direction-rtl) {\n padding-left: 27em;\n}\n.ql-editor li.ql-indent-9:not(.ql-direction-rtl) {\n padding-left: 28.5em;\n}\n.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right {\n padding-right: 27em;\n}\n.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right {\n padding-right: 28.5em;\n}\n.ql-editor .ql-video {\n display: block;\n max-width: 100%;\n}\n.ql-editor .ql-video.ql-align-center {\n margin: 0 auto;\n}\n.ql-editor .ql-video.ql-align-right {\n margin: 0 0 0 auto;\n}\n.ql-editor .ql-bg-black {\n background-color: #000;\n}\n.ql-editor .ql-bg-red {\n background-color: #e60000;\n}\n.ql-editor .ql-bg-orange {\n background-color: #f90;\n}\n.ql-editor .ql-bg-yellow {\n background-color: #ff0;\n}\n.ql-editor .ql-bg-green {\n background-color: #008a00;\n}\n.ql-editor .ql-bg-blue {\n background-color: #06c;\n}\n.ql-editor .ql-bg-purple {\n background-color: #93f;\n}\n.ql-editor .ql-color-white {\n color: #fff;\n}\n.ql-editor .ql-color-red {\n color: #e60000;\n}\n.ql-editor .ql-color-orange {\n color: #f90;\n}\n.ql-editor .ql-color-yellow {\n color: #ff0;\n}\n.ql-editor .ql-color-green {\n color: #008a00;\n}\n.ql-editor .ql-color-blue {\n color: #06c;\n}\n.ql-editor .ql-color-purple {\n color: #93f;\n}\n.ql-editor .ql-font-serif {\n font-family: Georgia, Times New Roman, serif;\n}\n.ql-editor .ql-font-monospace {\n font-family: Monaco, Courier New, monospace;\n}\n.ql-editor .ql-size-small {\n font-size: 0.75em;\n}\n.ql-editor .ql-size-large {\n font-size: 1.5em;\n}\n.ql-editor .ql-size-huge {\n font-size: 2.5em;\n}\n.ql-editor .ql-direction-rtl {\n direction: rtl;\n text-align: inherit;\n}\n.ql-editor .ql-align-center {\n text-align: center;\n}\n.ql-editor .ql-align-justify {\n text-align: justify;\n}\n.ql-editor .ql-align-right {\n text-align: right;\n}\n.ql-editor.ql-blank::before {\n color: rgba(0, 0, 0, 0.6);\n content: attr(data-placeholder);\n font-style: italic;\n left: 15px;\n pointer-events: none;\n position: absolute;\n right: 15px;\n}\n.ql-snow.ql-toolbar:after,\n.ql-snow .ql-toolbar:after {\n clear: both;\n content: \"\";\n display: table;\n}\n.ql-snow.ql-toolbar button,\n.ql-snow .ql-toolbar button {\n background: none;\n border: none;\n cursor: pointer;\n display: inline-block;\n float: left;\n height: 24px;\n padding: 3px 5px;\n width: 28px;\n}\n.ql-snow.ql-toolbar button svg,\n.ql-snow .ql-toolbar button svg {\n float: left;\n height: 100%;\n}\n.ql-snow.ql-toolbar button:active:hover,\n.ql-snow .ql-toolbar button:active:hover {\n outline: none;\n}\n.ql-snow.ql-toolbar input.ql-image[type=\"file\"],\n.ql-snow .ql-toolbar input.ql-image[type=\"file\"] {\n display: none;\n}\n.ql-snow.ql-toolbar button:hover,\n.ql-snow .ql-toolbar button:hover,\n.ql-snow.ql-toolbar button:focus,\n.ql-snow .ql-toolbar button:focus,\n.ql-snow.ql-toolbar button.ql-active,\n.ql-snow .ql-toolbar button.ql-active,\n.ql-snow.ql-toolbar .ql-picker-label:hover,\n.ql-snow .ql-toolbar .ql-picker-label:hover,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active,\n.ql-snow.ql-toolbar .ql-picker-item:hover,\n.ql-snow .ql-toolbar .ql-picker-item:hover,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected {\n color: #06c;\n}\n.ql-snow.ql-toolbar button:hover .ql-fill,\n.ql-snow .ql-toolbar button:hover .ql-fill,\n.ql-snow.ql-toolbar button:focus .ql-fill,\n.ql-snow .ql-toolbar button:focus .ql-fill,\n.ql-snow.ql-toolbar button.ql-active .ql-fill,\n.ql-snow .ql-toolbar button.ql-active .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,\n.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill {\n fill: #06c;\n}\n.ql-snow.ql-toolbar button:hover .ql-stroke,\n.ql-snow .ql-toolbar button:hover .ql-stroke,\n.ql-snow.ql-toolbar button:focus .ql-stroke,\n.ql-snow .ql-toolbar button:focus .ql-stroke,\n.ql-snow.ql-toolbar button.ql-active .ql-stroke,\n.ql-snow .ql-toolbar button.ql-active .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,\n.ql-snow.ql-toolbar button:hover .ql-stroke-miter,\n.ql-snow .ql-toolbar button:hover .ql-stroke-miter,\n.ql-snow.ql-toolbar button:focus .ql-stroke-miter,\n.ql-snow .ql-toolbar button:focus .ql-stroke-miter,\n.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,\n.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,\n.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,\n.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter {\n stroke: #06c;\n}\n@media (pointer: coarse) {\n .ql-snow.ql-toolbar button:hover:not(.ql-active),\n .ql-snow .ql-toolbar button:hover:not(.ql-active) {\n color: #444;\n }\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill {\n fill: #444;\n }\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,\n .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,\n .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter {\n stroke: #444;\n }\n}\n.ql-snow {\n box-sizing: border-box;\n}\n.ql-snow * {\n box-sizing: border-box;\n}\n.ql-snow .ql-hidden {\n display: none;\n}\n.ql-snow .ql-out-bottom,\n.ql-snow .ql-out-top {\n visibility: hidden;\n}\n.ql-snow .ql-tooltip {\n position: absolute;\n transform: translateY(10px);\n}\n.ql-snow .ql-tooltip a {\n cursor: pointer;\n text-decoration: none;\n}\n.ql-snow .ql-tooltip.ql-flip {\n transform: translateY(-10px);\n}\n.ql-snow .ql-formats {\n display: inline-block;\n vertical-align: middle;\n}\n.ql-snow .ql-formats:after {\n clear: both;\n content: \"\";\n display: table;\n}\n.ql-snow .ql-stroke {\n fill: none;\n stroke: #444;\n stroke-linecap: round;\n stroke-linejoin: round;\n stroke-width: 2;\n}\n.ql-snow .ql-stroke-miter {\n fill: none;\n stroke: #444;\n stroke-miterlimit: 10;\n stroke-width: 2;\n}\n.ql-snow .ql-fill,\n.ql-snow .ql-stroke.ql-fill {\n fill: #444;\n}\n.ql-snow .ql-empty {\n fill: none;\n}\n.ql-snow .ql-even {\n fill-rule: evenodd;\n}\n.ql-snow .ql-thin,\n.ql-snow .ql-stroke.ql-thin {\n stroke-width: 1;\n}\n.ql-snow .ql-transparent {\n opacity: 0.4;\n}\n.ql-snow .ql-direction svg:last-child {\n display: none;\n}\n.ql-snow .ql-direction.ql-active svg:last-child {\n display: inline;\n}\n.ql-snow .ql-direction.ql-active svg:first-child {\n display: none;\n}\n.ql-snow .ql-editor h1 {\n font-size: 2em;\n}\n.ql-snow .ql-editor h2 {\n font-size: 1.5em;\n}\n.ql-snow .ql-editor h3 {\n font-size: 1.17em;\n}\n.ql-snow .ql-editor h4 {\n font-size: 1em;\n}\n.ql-snow .ql-editor h5 {\n font-size: 0.83em;\n}\n.ql-snow .ql-editor h6 {\n font-size: 0.67em;\n}\n.ql-snow .ql-editor a {\n text-decoration: underline;\n}\n.ql-snow .ql-editor blockquote {\n border-left: 4px solid #ccc;\n margin-bottom: 5px;\n margin-top: 5px;\n padding-left: 16px;\n}\n.ql-snow .ql-editor code,\n.ql-snow .ql-editor pre {\n background-color: #f0f0f0;\n border-radius: 3px;\n}\n.ql-snow .ql-editor pre {\n white-space: pre-wrap;\n margin-bottom: 5px;\n margin-top: 5px;\n padding: 5px 10px;\n}\n.ql-snow .ql-editor code {\n font-size: 85%;\n padding: 2px 4px;\n}\n.ql-snow .ql-editor pre.ql-syntax {\n background-color: #23241f;\n color: #f8f8f2;\n overflow: visible;\n}\n.ql-snow .ql-editor img {\n max-width: 100%;\n}\n.ql-snow .ql-picker {\n color: #444;\n display: inline-block;\n float: left;\n font-size: 14px;\n font-weight: 500;\n height: 24px;\n position: relative;\n vertical-align: middle;\n}\n.ql-snow .ql-picker-label {\n cursor: pointer;\n display: inline-block;\n height: 100%;\n padding-left: 8px;\n padding-right: 2px;\n position: relative;\n width: 100%;\n}\n.ql-snow .ql-picker-label::before {\n display: inline-block;\n line-height: 22px;\n}\n.ql-snow .ql-picker-options {\n display: none;\n min-width: 100%;\n padding: 4px 8px;\n position: absolute;\n white-space: nowrap;\n}\n.ql-snow .ql-picker-options .ql-picker-item {\n cursor: pointer;\n display: block;\n padding-bottom: 5px;\n padding-top: 5px;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label {\n color: #ccc;\n z-index: 2;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill {\n fill: #ccc;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke {\n stroke: #ccc;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-options {\n display: block;\n margin-top: -1px;\n top: 100%;\n z-index: 1;\n}\n.ql-snow .ql-color-picker,\n.ql-snow .ql-icon-picker {\n width: 28px;\n}\n.ql-snow .ql-color-picker .ql-picker-label,\n.ql-snow .ql-icon-picker .ql-picker-label {\n padding: 2px 4px;\n}\n.ql-snow .ql-color-picker .ql-picker-label svg,\n.ql-snow .ql-icon-picker .ql-picker-label svg {\n right: 4px;\n}\n.ql-snow .ql-icon-picker .ql-picker-options {\n padding: 4px 0px;\n}\n.ql-snow .ql-icon-picker .ql-picker-item {\n height: 24px;\n width: 24px;\n padding: 2px 4px;\n}\n.ql-snow .ql-color-picker .ql-picker-options {\n padding: 3px 5px;\n width: 152px;\n}\n.ql-snow .ql-color-picker .ql-picker-item {\n border: 1px solid transparent;\n float: left;\n height: 16px;\n margin: 2px;\n padding: 0px;\n width: 16px;\n}\n.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg {\n position: absolute;\n margin-top: -9px;\n right: 0;\n top: 50%;\n width: 18px;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"])::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"])::before {\n content: attr(data-label);\n}\n.ql-snow .ql-picker.ql-header {\n width: 98px;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item::before {\n content: \"Normal\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]::before {\n content: \"Heading 1\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]::before {\n content: \"Heading 2\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]::before {\n content: \"Heading 3\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]::before {\n content: \"Heading 4\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]::before {\n content: \"Heading 5\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]::before,\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]::before {\n content: \"Heading 6\";\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]::before {\n font-size: 2em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]::before {\n font-size: 1.5em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]::before {\n font-size: 1.17em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]::before {\n font-size: 1em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]::before {\n font-size: 0.83em;\n}\n.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]::before {\n font-size: 0.67em;\n}\n.ql-snow .ql-picker.ql-font {\n width: 108px;\n}\n.ql-snow .ql-picker.ql-font .ql-picker-label::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item::before {\n content: \"Sans Serif\";\n}\n.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=\"serif\"]::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"serif\"]::before {\n content: \"Serif\";\n}\n.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=\"monospace\"]::before,\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"monospace\"]::before {\n content: \"Monospace\";\n}\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"serif\"]::before {\n font-family: Georgia, Times New Roman, serif;\n}\n.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=\"monospace\"]::before {\n font-family: Monaco, Courier New, monospace;\n}\n.ql-snow .ql-picker.ql-size {\n width: 98px;\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item::before {\n content: \"Normal\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=\"small\"]::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"small\"]::before {\n content: \"Small\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=\"large\"]::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"large\"]::before {\n content: \"Large\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=\"huge\"]::before,\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"huge\"]::before {\n content: \"Huge\";\n}\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"small\"]::before {\n font-size: 10px;\n}\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"large\"]::before {\n font-size: 18px;\n}\n.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=\"huge\"]::before {\n font-size: 32px;\n}\n.ql-snow .ql-color-picker.ql-background .ql-picker-item {\n background-color: #fff;\n}\n.ql-snow .ql-color-picker.ql-color .ql-picker-item {\n background-color: #000;\n}\n.ql-toolbar.ql-snow {\n border: 1px solid #ccc;\n box-sizing: border-box;\n font-family: \"Helvetica Neue\", \"Helvetica\", \"Arial\", sans-serif;\n padding: 8px;\n}\n.ql-toolbar.ql-snow .ql-formats {\n margin-right: 15px;\n}\n.ql-toolbar.ql-snow .ql-picker-label {\n border: 1px solid transparent;\n}\n.ql-toolbar.ql-snow .ql-picker-options {\n border: 1px solid transparent;\n box-shadow: rgba(0, 0, 0, 0.2) 0 2px 8px;\n}\n.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label {\n border-color: #ccc;\n}\n.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options {\n border-color: #ccc;\n}\n.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,\n.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover {\n border-color: #000;\n}\n.ql-toolbar.ql-snow + .ql-container.ql-snow {\n border-top: 0px;\n}\n.ql-snow .ql-tooltip {\n background-color: #fff;\n border: 1px solid #ccc;\n box-shadow: 0px 0px 5px #ddd;\n color: #444;\n padding: 5px 12px;\n white-space: nowrap;\n}\n.ql-snow .ql-tooltip::before {\n content: \"Visit URL:\";\n line-height: 26px;\n margin-right: 8px;\n}\n.ql-snow .ql-tooltip input[type=\"text\"] {\n display: none;\n border: 1px solid #ccc;\n font-size: 13px;\n height: 26px;\n margin: 0px;\n padding: 3px 5px;\n width: 170px;\n}\n.ql-snow .ql-tooltip a.ql-preview {\n display: inline-block;\n max-width: 200px;\n overflow-x: hidden;\n text-overflow: ellipsis;\n vertical-align: top;\n}\n.ql-snow .ql-tooltip a.ql-action::after {\n border-right: 1px solid #ccc;\n content: \"Edit\";\n margin-left: 16px;\n padding-right: 8px;\n}\n.ql-snow .ql-tooltip a.ql-remove::before {\n content: \"Remove\";\n margin-left: 8px;\n}\n.ql-snow .ql-tooltip a {\n line-height: 26px;\n}\n.ql-snow .ql-tooltip.ql-editing a.ql-preview,\n.ql-snow .ql-tooltip.ql-editing a.ql-remove {\n display: none;\n}\n.ql-snow .ql-tooltip.ql-editing input[type=\"text\"] {\n display: inline-block;\n}\n.ql-snow .ql-tooltip.ql-editing a.ql-action::after {\n border-right: 0px;\n content: \"Save\";\n padding-right: 0px;\n}\n.ql-snow .ql-tooltip[data-mode=\"link\"]::before {\n content: \"Enter link:\";\n}\n.ql-snow .ql-tooltip[data-mode=\"formula\"]::before {\n content: \"Enter formula:\";\n}\n.ql-snow .ql-tooltip[data-mode=\"video\"]::before {\n content: \"Enter video:\";\n}\n.ql-snow a {\n color: #06c;\n}\n.ql-container.ql-snow {\n border: 1px solid #ccc;\n}\n";
28410
28511
  var EditorBase = ComponentBase.extend({
28411
28512
  defaultProps: {
28412
28513
  __TYPE: 'Editor',
@@ -28849,7 +28950,7 @@ var Fieldset = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref)
28849
28950
  id: idState,
28850
28951
  ref: elementRef,
28851
28952
  style: props.style,
28852
- className: cx('root'),
28953
+ className: classNames(props.className, cx('root')),
28853
28954
  onClick: props.onClick
28854
28955
  }, FieldsetBase.getOtherProps(props), ptm('root'));
28855
28956
  var legend = createLegend();
@@ -29100,12 +29201,14 @@ var Messages = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
29100
29201
  });
29101
29202
  };
29102
29203
  var remove = function remove(messageInfo) {
29204
+ // allow removal by ID or by message equality
29205
+ var removeMessage = messageInfo._pId ? messageInfo.message : messageInfo;
29103
29206
  setMessagesState(function (prev) {
29104
29207
  return prev.filter(function (msg) {
29105
- return msg._pId !== messageInfo._pId;
29208
+ return msg._pId !== messageInfo._pId && !ObjectUtils.deepEquals(msg.message, removeMessage);
29106
29209
  });
29107
29210
  });
29108
- props.onRemove && props.onRemove(messageInfo.message);
29211
+ props.onRemove && props.onRemove(removeMessage);
29109
29212
  };
29110
29213
  var onClose = function onClose(messageInfo) {
29111
29214
  remove(messageInfo);
@@ -29228,7 +29331,7 @@ var ProgressBar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
29228
29331
  var createDeterminate = function createDeterminate() {
29229
29332
  var label = createLabel();
29230
29333
  var rootProps = mergeProps({
29231
- className: cx('root'),
29334
+ className: classNames(props.className, cx('root')),
29232
29335
  style: props.style,
29233
29336
  role: 'progressbar',
29234
29337
  'aria-valuemin': '0',
@@ -30161,7 +30264,7 @@ var classes$F = {
30161
30264
  item: 'p-galleria-item',
30162
30265
  transition: 'p-galleria'
30163
30266
  };
30164
- var styles$B = "\n@layer primereact {\n .p-galleria-content {\n display: flex;\n flex-direction: column;\n }\n \n .p-galleria-item-wrapper {\n display: flex;\n flex-direction: column;\n position: relative;\n }\n \n .p-galleria-item-container {\n position: relative;\n display: flex;\n height: 100%;\n }\n \n .p-galleria-item-nav {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n }\n \n .p-galleria-item-prev {\n left: 0;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n \n .p-galleria-item-next {\n right: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-galleria-item {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n width: 100%;\n }\n \n .p-galleria-item-nav-onhover .p-galleria-item-nav {\n pointer-events: none;\n opacity: 0;\n transition: opacity .2s ease-in-out;\n }\n \n .p-galleria-item-nav-onhover .p-galleria-item-wrapper:hover .p-galleria-item-nav {\n pointer-events: all;\n opacity: 1;\n }\n \n .p-galleria-item-nav-onhover .p-galleria-item-wrapper:hover .p-galleria-item-nav.p-disabled {\n pointer-events: none;\n }\n \n .p-galleria-caption {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n }\n \n /* Thumbnails */\n .p-galleria-thumbnail-wrapper {\n display: flex;\n flex-direction: column;\n overflow: auto;\n flex-shrink: 0;\n }\n \n .p-galleria-thumbnail-prev,\n .p-galleria-thumbnail-next {\n align-self: center;\n flex: 0 0 auto;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n position: relative;\n }\n \n .p-galleria-thumbnail-prev span,\n .p-galleria-thumbnail-next span {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n \n .p-galleria-thumbnail-container {\n display: flex;\n flex-direction: row;\n }\n \n .p-galleria-thumbnail-items-container {\n overflow: hidden;\n width: 100%;\n }\n \n .p-galleria-thumbnail-items {\n display: flex;\n }\n \n .p-galleria-thumbnail-item {\n overflow: auto;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n opacity: .5;\n }\n \n .p-galleria-thumbnail-item:hover {\n opacity: 1;\n transition: opacity .3s;\n }\n \n .p-galleria-thumbnail-item-current {\n opacity: 1;\n }\n \n /* Positions */\n /* Thumbnails */\n .p-galleria-thumbnails-left .p-galleria-content,\n .p-galleria-thumbnails-right .p-galleria-content {\n flex-direction: row;\n }\n \n .p-galleria-thumbnails-left .p-galleria-item-wrapper,\n .p-galleria-thumbnails-right .p-galleria-item-wrapper {\n flex-direction: row;\n }\n \n .p-galleria-thumbnails-left .p-galleria-item-wrapper,\n .p-galleria-thumbnails-top .p-galleria-item-wrapper {\n order: 2;\n }\n \n .p-galleria-thumbnails-left .p-galleria-thumbnail-wrapper,\n .p-galleria-thumbnails-top .p-galleria-thumbnail-wrapper {\n order: 1;\n }\n \n .p-galleria-thumbnails-left .p-galleria-thumbnail-container,\n .p-galleria-thumbnails-right .p-galleria-thumbnail-container {\n flex-direction: column;\n flex-grow: 1;\n }\n \n .p-galleria-thumbnails-left .p-galleria-thumbnail-items,\n .p-galleria-thumbnails-right .p-galleria-thumbnail-items {\n flex-direction: column;\n height: 100%;\n }\n \n /* Indicators */\n .p-galleria-indicators {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-galleria-indicator > button {\n display: inline-flex;\n align-items: center;\n }\n \n .p-galleria-indicators-left .p-galleria-item-wrapper,\n .p-galleria-indicators-right .p-galleria-item-wrapper {\n flex-direction: row;\n align-items: center;\n }\n \n .p-galleria-indicators-left .p-galleria-item-container,\n .p-galleria-indicators-top .p-galleria-item-container {\n order: 2;\n }\n \n .p-galleria-indicators-left .p-galleria-indicators,\n .p-galleria-indicators-top .p-galleria-indicators {\n order: 1;\n }\n \n .p-galleria-indicators-left .p-galleria-indicators,\n .p-galleria-indicators-right .p-galleria-indicators {\n flex-direction: column;\n }\n \n .p-galleria-indicator-onitem .p-galleria-indicators {\n position: absolute;\n display: flex;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-top .p-galleria-indicators {\n top: 0;\n left: 0;\n width: 100%;\n align-items: flex-start;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-right .p-galleria-indicators {\n right: 0;\n top: 0;\n height: 100%;\n align-items: flex-end;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-bottom .p-galleria-indicators {\n bottom: 0;\n left: 0;\n width: 100%;\n align-items: flex-end;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-left .p-galleria-indicators {\n left: 0;\n top: 0;\n height: 100%;\n align-items: flex-start;\n }\n \n /* FullScreen */\n .p-galleria-mask {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n }\n \n .p-galleria-mask.p-component-overlay {\n pointer-events: auto;\n }\n \n .p-galleria-close {\n position: absolute;\n top: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n }\n \n .p-galleria-mask .p-galleria-item-nav {\n position: fixed;\n top: 50%;\n margin-top: -.5rem;\n }\n \n /* Animation */\n .p-galleria-enter {\n opacity: 0;\n transform: scale(0.7);\n }\n \n .p-galleria-enter-active {\n opacity: 1;\n transform: scale(1);\n transition: all 150ms cubic-bezier(0, 0, 0.2, 1);\n }\n \n .p-galleria-enter-done {\n transform: none;\n }\n \n .p-galleria-exit {\n opacity: 1;\n }\n \n .p-galleria-exit-active {\n opacity: 0;\n transform: scale(0.7);\n transition: all 150ms cubic-bezier(0.4, 0.0, 0.2, 1);\n }\n \n .p-galleria-enter-active .p-galleria-item-nav {\n opacity: 0;\n }\n \n /* Keyboard Support */\n .p-items-hidden .p-galleria-thumbnail-item {\n visibility: hidden;\n }\n \n .p-items-hidden .p-galleria-thumbnail-item.p-galleria-thumbnail-item-active {\n visibility: visible;\n }\n}\n";
30267
+ var styles$B = "\n@layer primereact {\n .p-galleria-content {\n display: flex;\n flex-direction: column;\n }\n \n .p-galleria-item-wrapper {\n display: flex;\n flex-direction: column;\n position: relative;\n }\n \n .p-galleria-item-container {\n position: relative;\n display: flex;\n height: 100%;\n }\n \n .p-galleria-item-nav {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n }\n \n .p-galleria-item-prev {\n left: 0;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n \n .p-galleria-item-next {\n right: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-galleria-item {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n width: 100%;\n }\n \n .p-galleria-item-nav-onhover .p-galleria-item-nav {\n pointer-events: none;\n opacity: 0;\n transition: opacity .2s ease-in-out;\n }\n \n .p-galleria-item-nav-onhover .p-galleria-item-wrapper:hover .p-galleria-item-nav {\n pointer-events: all;\n opacity: 1;\n }\n \n .p-galleria-item-nav-onhover .p-galleria-item-wrapper:hover .p-galleria-item-nav.p-disabled {\n pointer-events: none;\n }\n \n .p-galleria-caption {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n }\n \n /* Thumbnails */\n .p-galleria-thumbnail-wrapper {\n display: flex;\n flex-direction: column;\n overflow: auto;\n flex-shrink: 0;\n }\n \n .p-galleria-thumbnail-prev,\n .p-galleria-thumbnail-next {\n align-self: center;\n flex: 0 0 auto;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n position: relative;\n }\n \n .p-galleria-thumbnail-prev span,\n .p-galleria-thumbnail-next span {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n \n .p-galleria-thumbnail-container {\n display: flex;\n flex-direction: row;\n }\n \n .p-galleria-thumbnail-items-container {\n overflow: hidden;\n width: 100%;\n }\n \n .p-galleria-thumbnail-items {\n display: flex;\n }\n \n .p-galleria-thumbnail-item {\n overflow: auto;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n opacity: .5;\n }\n \n .p-galleria-thumbnail-item:hover {\n opacity: 1;\n transition: opacity .3s;\n }\n \n .p-galleria-thumbnail-item-current {\n opacity: 1;\n }\n \n /* Positions */\n /* Thumbnails */\n .p-galleria-thumbnails-left .p-galleria-content,\n .p-galleria-thumbnails-right .p-galleria-content {\n flex-direction: row;\n }\n \n .p-galleria-thumbnails-left .p-galleria-item-wrapper,\n .p-galleria-thumbnails-right .p-galleria-item-wrapper {\n flex-direction: row;\n }\n \n .p-galleria-thumbnails-left .p-galleria-item-wrapper,\n .p-galleria-thumbnails-top .p-galleria-item-wrapper {\n order: 2;\n }\n \n .p-galleria-thumbnails-left .p-galleria-thumbnail-wrapper,\n .p-galleria-thumbnails-top .p-galleria-thumbnail-wrapper {\n order: 1;\n }\n \n .p-galleria-thumbnails-left .p-galleria-thumbnail-container,\n .p-galleria-thumbnails-right .p-galleria-thumbnail-container {\n flex-direction: column;\n flex-grow: 1;\n }\n \n .p-galleria-thumbnails-left .p-galleria-thumbnail-items,\n .p-galleria-thumbnails-right .p-galleria-thumbnail-items {\n flex-direction: column;\n height: 100%;\n }\n \n /* Indicators */\n .p-galleria-indicators {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-galleria-indicator > button {\n display: inline-flex;\n align-items: center;\n }\n \n .p-galleria-indicators-left .p-galleria-item-wrapper,\n .p-galleria-indicators-right .p-galleria-item-wrapper {\n flex-direction: row;\n align-items: center;\n }\n \n .p-galleria-indicators-left .p-galleria-item-container,\n .p-galleria-indicators-top .p-galleria-item-container {\n order: 2;\n }\n \n .p-galleria-indicators-left .p-galleria-indicators,\n .p-galleria-indicators-top .p-galleria-indicators {\n order: 1;\n }\n \n .p-galleria-indicators-left .p-galleria-indicators,\n .p-galleria-indicators-right .p-galleria-indicators {\n flex-direction: column;\n }\n \n .p-galleria-indicator-onitem .p-galleria-indicators {\n position: absolute;\n display: flex;\n z-index: 1;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-top .p-galleria-indicators {\n top: 0;\n left: 0;\n width: 100%;\n align-items: flex-start;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-right .p-galleria-indicators {\n right: 0;\n top: 0;\n height: 100%;\n align-items: flex-end;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-bottom .p-galleria-indicators {\n bottom: 0;\n left: 0;\n width: 100%;\n align-items: flex-end;\n }\n \n .p-galleria-indicator-onitem.p-galleria-indicators-left .p-galleria-indicators {\n left: 0;\n top: 0;\n height: 100%;\n align-items: flex-start;\n }\n \n /* FullScreen */\n .p-galleria-mask {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n }\n \n .p-galleria-mask.p-component-overlay {\n pointer-events: auto;\n }\n \n .p-galleria-close {\n position: absolute;\n top: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n }\n \n .p-galleria-mask .p-galleria-item-nav {\n position: fixed;\n top: 50%;\n margin-top: -.5rem;\n }\n \n /* Animation */\n .p-galleria-enter {\n opacity: 0;\n transform: scale(0.7);\n }\n \n .p-galleria-enter-active {\n opacity: 1;\n transform: scale(1);\n transition: all 150ms cubic-bezier(0, 0, 0.2, 1);\n }\n \n .p-galleria-enter-done {\n transform: none;\n }\n \n .p-galleria-exit {\n opacity: 1;\n }\n \n .p-galleria-exit-active {\n opacity: 0;\n transform: scale(0.7);\n transition: all 150ms cubic-bezier(0.4, 0.0, 0.2, 1);\n }\n \n .p-galleria-enter-active .p-galleria-item-nav {\n opacity: 0;\n }\n \n /* Keyboard Support */\n .p-items-hidden .p-galleria-thumbnail-item {\n visibility: hidden;\n }\n \n .p-items-hidden .p-galleria-thumbnail-item.p-galleria-thumbnail-item-active {\n visibility: visible;\n }\n}\n";
30165
30268
  var inlineStyles$e = {
30166
30269
  thumbnailItemsContainer: function thumbnailItemsContainer(_ref9) {
30167
30270
  var height = _ref9.height;
@@ -30833,8 +30936,7 @@ var Galleria = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
30833
30936
  setVisibleState(false);
30834
30937
  };
30835
30938
  var onEnter = function onEnter() {
30836
- DomHandler.addClass(document.body, 'p-overflow-hidden');
30837
- document.body.style.setProperty('--scrollbar-width', DomHandler.calculateScrollbarWidth() + 'px');
30939
+ DomHandler.blockBodyScroll();
30838
30940
  };
30839
30941
  var onEntering = function onEntering() {
30840
30942
  ZIndexUtils.set('modal', maskRef.current, context && context.autoZIndex || PrimeReact.autoZIndex, props.baseZIndex || context && context.zIndex['modal'] || PrimeReact.zIndex['modal']);
@@ -30844,8 +30946,7 @@ var Galleria = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
30844
30946
  props.onShow && props.onShow();
30845
30947
  };
30846
30948
  var onExit = function onExit() {
30847
- DomHandler.removeClass(document.body, 'p-overflow-hidden');
30848
- document.body.style.removeProperty('--scrollbar-width');
30949
+ DomHandler.unblockBodyScroll();
30849
30950
  !isUnstyled() && DomHandler.addClass(maskRef.current, 'p-component-overlay-leave');
30850
30951
  };
30851
30952
  var onExited = function onExited() {
@@ -31087,7 +31188,7 @@ var classes$E = {
31087
31188
  },
31088
31189
  transition: 'p-image-preview'
31089
31190
  };
31090
- var styles$A = "\n@layer primereact {\n .p-image-mask {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-image-preview-container {\n position: relative;\n display: inline-block;\n }\n \n .p-image-preview-indicator {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0;\n transition: opacity .3s;\n }\n \n .p-image-preview-icon {\n font-size: 1.5rem;\n }\n \n .p-image-preview-container:hover > .p-image-preview-indicator {\n opacity: 1;\n cursor: pointer;\n }\n \n .p-image-preview-container > img {\n cursor: pointer;\n }\n \n .p-image-toolbar {\n position: absolute;\n top: 0;\n right: 0;\n display: flex;\n z-index: 1;\n }\n \n .p-image-action.p-link {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n \n .p-image-preview {\n transition: transform .15s;\n max-width: 100vw;\n max-height: 100vh;\n width: 100%;\n height: 100%;\n }\n \n .p-image-preview-enter {\n opacity: 0;\n transform: scale(0.7);\n }\n \n .p-image-preview-enter-active {\n opacity: 1;\n transform: scale(1);\n transition: all 150ms cubic-bezier(0, 0, 0.2, 1);\n }\n \n .p-image-preview-enter-done {\n transform: none;\n }\n \n .p-image-preview-exit {\n opacity: 1;\n }\n \n .p-image-preview-exit-active {\n opacity: 0;\n transform: scale(0.7);\n transition: all 150ms cubic-bezier(0.4, 0.0, 0.2, 1);\n }\n}\n";
31191
+ var styles$A = "\n@layer primereact {\n .p-image-mask {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-image-preview-container {\n position: relative;\n display: inline-block;\n line-height: 0;\n }\n \n .p-image-preview-indicator {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0;\n transition: opacity .3s;\n border: none;\n padding: 0;\n }\n \n .p-image-preview-icon {\n font-size: 1.5rem;\n }\n \n .p-image-preview-container:hover > .p-image-preview-indicator {\n opacity: 1;\n cursor: pointer;\n }\n \n .p-image-preview-container > img {\n cursor: pointer;\n }\n \n .p-image-toolbar {\n position: absolute;\n top: 0;\n right: 0;\n display: flex;\n z-index: 1;\n }\n \n .p-image-action.p-link {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n \n .p-image-preview {\n transition: transform .15s;\n max-width: 100vw;\n max-height: 100vh;\n width: 100%;\n height: 100%;\n }\n \n .p-image-preview-enter {\n opacity: 0;\n transform: scale(0.7);\n }\n \n .p-image-preview-enter-active {\n opacity: 1;\n transform: scale(1);\n transition: all 150ms cubic-bezier(0, 0, 0.2, 1);\n }\n \n .p-image-preview-enter-done {\n transform: none;\n }\n \n .p-image-preview-exit {\n opacity: 1;\n }\n \n .p-image-preview-exit-active {\n opacity: 0;\n transform: scale(0.7);\n transition: all 150ms cubic-bezier(0.4, 0.0, 0.2, 1);\n }\n}\n";
31091
31192
  var inlineStyles$d = {
31092
31193
  preview: function preview(_ref2) {
31093
31194
  var rotateState = _ref2.rotateState,
@@ -31184,8 +31285,7 @@ var Image = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.fo
31184
31285
  var show = function show() {
31185
31286
  if (props.preview) {
31186
31287
  setMaskVisibleState(true);
31187
- DomHandler.addClass(document.body, 'p-overflow-hidden');
31188
- document.body.style.setProperty('--scrollbar-width', DomHandler.calculateScrollbarWidth() + 'px');
31288
+ DomHandler.blockBodyScroll();
31189
31289
  setTimeout(function () {
31190
31290
  setPreviewVisibleState(true);
31191
31291
  }, 25);
@@ -31194,8 +31294,7 @@ var Image = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.fo
31194
31294
  var hide = function hide() {
31195
31295
  if (!previewClick.current) {
31196
31296
  setPreviewVisibleState(false);
31197
- DomHandler.removeClass(document.body, 'p-overflow-hidden');
31198
- document.body.style.removeProperty('--scrollbar-width');
31297
+ DomHandler.unblockBodyScroll();
31199
31298
  setRotateState(0);
31200
31299
  setScaleState(1);
31201
31300
  }
@@ -34541,7 +34640,8 @@ var MenuBase = ComponentBase.extend({
34541
34640
  transitionOptions: null,
34542
34641
  onShow: null,
34543
34642
  onHide: null,
34544
- children: undefined
34643
+ children: undefined,
34644
+ closeOnEscape: true
34545
34645
  },
34546
34646
  css: {
34547
34647
  classes: classes$x,
@@ -34579,6 +34679,9 @@ var Menu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.for
34579
34679
  });
34580
34680
  var menuRef = React__namespace.useRef(null);
34581
34681
  var targetRef = React__namespace.useRef(null);
34682
+ useOnEscapeKey(targetRef, props.popup && props.closeOnEscape, function (event) {
34683
+ hide(event);
34684
+ });
34582
34685
  var _useOverlayListener = useOverlayListener({
34583
34686
  target: targetRef,
34584
34687
  overlay: menuRef,
@@ -35350,7 +35453,7 @@ var MessageBase = ComponentBase.extend({
35350
35453
  icon: 'p-inline-message-icon',
35351
35454
  text: 'p-inline-message-text'
35352
35455
  },
35353
- styles: "\n @layer primereact {\n .p-inline-message {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n vertical-align: top;\n }\n \n .p-inline-message-icon-only .p-inline-message-text {\n visibility: hidden;\n width: 0;\n }\n \n .p-fluid .p-inline-message {\n display: flex;\n } \n }\n "
35456
+ styles: "\n @layer primereact {\n .p-inline-message {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n vertical-align: top;\n }\n\n .p-inline-message-icon {\n flex-shrink: 0;\n }\n \n .p-inline-message-icon-only .p-inline-message-text {\n visibility: hidden;\n width: 0;\n }\n \n .p-fluid .p-inline-message {\n display: flex;\n } \n }\n "
35354
35457
  }
35355
35458
  });
35356
35459
 
@@ -35500,8 +35603,14 @@ var classes$v = {
35500
35603
  };
35501
35604
  var styles$r = "\n@layer primereact {\n .p-multiselect {\n display: inline-flex;\n user-select: none;\n cursor: pointer;\n }\n \n .p-multiselect-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n cursor: pointer;\n }\n \n .p-multiselect-label-container {\n overflow: hidden;\n flex: 1 1 auto;\n cursor: pointer;\n }\n \n .p-multiselect-label {\n display: block;\n white-space: nowrap;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .p-multiselect-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n .p-multiselect-token {\n cursor: default;\n display: inline-flex;\n align-items: center;\n flex: 0 0 auto;\n }\n \n .p-multiselect-token-icon {\n cursor: pointer;\n }\n \n .p-multiselect .p-multiselect-panel {\n min-width: 100%;\n }\n \n .p-multiselect-inline.p-multiselect-panel {\n border: none;\n position: initial;\n background: none;\n box-shadow: none;\n }\n \n .p-multiselect-inline.p-multiselect-panel .p-multiselect-items {\n padding: 0;\n }\n \n .p-multiselect-flex.p-multiselect-panel .p-multiselect-items {\n display: flex;\n flex-wrap: wrap;\n }\n \n .p-multiselect-items-wrapper {\n overflow: auto;\n }\n \n .p-multiselect-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-multiselect-item {\n cursor: pointer;\n display: flex;\n align-items: center;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n }\n \n .p-multiselect-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .p-multiselect-select-all-label {\n margin-left: 0.5rem;\n }\n \n .p-multiselect-filter-container {\n position: relative;\n flex: 1 1 auto;\n }\n \n .p-multiselect-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-multiselect-filter-container .p-inputtext {\n width: 100%;\n }\n \n .p-multiselect-close {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n position: relative;\n margin-left: auto;\n }\n \n .p-multiselect-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-fluid .p-multiselect {\n display: flex;\n }\n}\n";
35502
35605
  var inlineStyles$a = {
35503
- itemGroup: function itemGroup(_ref7) {
35504
- var scrollerOptions = _ref7.scrollerOptions;
35606
+ root: function root(_ref7) {
35607
+ var props = _ref7.props;
35608
+ return props.showClear && !props.disabled && {
35609
+ position: 'relative'
35610
+ };
35611
+ },
35612
+ itemGroup: function itemGroup(_ref8) {
35613
+ var scrollerOptions = _ref8.scrollerOptions;
35505
35614
  return {
35506
35615
  height: scrollerOptions.props ? scrollerOptions.props.itemSize : undefined
35507
35616
  };
@@ -35512,9 +35621,10 @@ var MultiSelectBase = ComponentBase.extend({
35512
35621
  __TYPE: 'MultiSelect',
35513
35622
  appendTo: null,
35514
35623
  ariaLabelledBy: null,
35624
+ checkboxIcon: null,
35515
35625
  className: null,
35626
+ clearIcon: null,
35516
35627
  closeIcon: null,
35517
- checkboxIcon: null,
35518
35628
  dataKey: null,
35519
35629
  disabled: false,
35520
35630
  display: 'comma',
@@ -35530,17 +35640,17 @@ var MultiSelectBase = ComponentBase.extend({
35530
35640
  fixedPlaceholder: false,
35531
35641
  flex: false,
35532
35642
  id: null,
35533
- itemCheckboxIcon: null,
35534
35643
  inline: false,
35535
35644
  inputId: null,
35536
35645
  inputRef: null,
35646
+ itemCheckboxIcon: null,
35537
35647
  itemClassName: null,
35538
35648
  itemTemplate: null,
35539
35649
  maxSelectedLabels: null,
35540
35650
  name: null,
35541
- onClick: null,
35542
35651
  onBlur: null,
35543
35652
  onChange: null,
35653
+ onClick: null,
35544
35654
  onFilter: null,
35545
35655
  onFocus: null,
35546
35656
  onHide: null,
@@ -35648,11 +35758,11 @@ var MultiSelectHeader = /*#__PURE__*/React__namespace.memo(function (props) {
35648
35758
  }), filterIcon);
35649
35759
  if (props.filterTemplate) {
35650
35760
  var defaultContentOptions = {
35651
- className: containerClassName,
35761
+ className: filterContainerProps.className,
35652
35762
  element: content,
35653
35763
  filterOptions: filterOptions,
35654
35764
  onFilter: onFilter,
35655
- filterIconClassName: filterIconClassName,
35765
+ filterIconClassName: props.filterIconClassName,
35656
35766
  props: props
35657
35767
  };
35658
35768
  content = ObjectUtils.getJSXElement(props.filterTemplate, defaultContentOptions);
@@ -36421,7 +36531,10 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
36421
36531
  _iterator.f();
36422
36532
  }
36423
36533
  } else {
36424
- option = findOptionByValue(val, props.value);
36534
+ option = findOptionByValue(val, props.options);
36535
+ if (ObjectUtils.isEmpty(option)) {
36536
+ option = findOptionByValue(val, props.value);
36537
+ }
36425
36538
  }
36426
36539
  }
36427
36540
  return option ? getOptionLabel(option) : null;
@@ -36531,9 +36644,13 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
36531
36644
  if (ObjectUtils.isNotEmpty(props.maxSelectedLabels) && props.value.length > props.maxSelectedLabels) {
36532
36645
  return getSelectedItemsLabel();
36533
36646
  } else {
36534
- return props.value.reduce(function (acc, value, index) {
36535
- return acc + (index !== 0 ? ',' : '') + getLabelByValue(value);
36536
- }, '');
36647
+ if (ObjectUtils.isArray(props.value)) {
36648
+ return props.value.reduce(function (acc, value, index) {
36649
+ return acc + (index !== 0 ? ', ' : '') + getLabelByValue(value);
36650
+ }, '');
36651
+ } else {
36652
+ return '';
36653
+ }
36537
36654
  }
36538
36655
  }
36539
36656
  return label;
@@ -36695,7 +36812,7 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
36695
36812
  var rootProps = mergeProps(_objectSpread$E(_objectSpread$E({
36696
36813
  ref: elementRef,
36697
36814
  id: props.id,
36698
- style: props.style,
36815
+ style: _objectSpread$E(_objectSpread$E({}, props.style), sx('root')),
36699
36816
  className: classNames(props.className, cx('root', {
36700
36817
  focusedState: focusedState,
36701
36818
  overlayVisibleState: overlayVisibleState
@@ -37234,11 +37351,9 @@ var OrderListSubList = /*#__PURE__*/React__namespace.memo(function (props) {
37234
37351
  return ObjectUtils.findIndexInList(item, props.selection, props.dataKey) !== -1;
37235
37352
  };
37236
37353
  var _onDragStart = function onDragStart(event, index) {
37354
+ event.dataTransfer.setData('text', 'orderlist');
37237
37355
  dragging.current = true;
37238
37356
  draggedItemIndex.current = index;
37239
- if (props.dragdropScope) {
37240
- event.dataTransfer.setData('text', 'orderlist');
37241
- }
37242
37357
  };
37243
37358
  var _onDragOver = function onDragOver(event, index) {
37244
37359
  if (draggedItemIndex.current !== index && draggedItemIndex.current + 1 !== index) {
@@ -37308,43 +37423,43 @@ var OrderListSubList = /*#__PURE__*/React__namespace.memo(function (props) {
37308
37423
  return props.value.map(function (item, i) {
37309
37424
  var content = props.itemTemplate ? props.itemTemplate(item) : item;
37310
37425
  var key = JSON.stringify(item);
37311
- var itemProps = mergeProps({
37312
- className: classNames(props.className, cx('item', {
37313
- item: item,
37314
- isSelected: isSelected
37315
- })),
37316
- onClick: function onClick(e) {
37317
- return props.onItemClick({
37318
- originalEvent: e,
37319
- value: item,
37320
- index: i
37321
- });
37322
- },
37323
- onKeyDown: function onKeyDown(e) {
37324
- return props.onItemKeyDown({
37325
- originalEvent: e,
37326
- value: item,
37327
- index: i
37328
- });
37329
- },
37330
- role: 'option',
37331
- 'aria-selected': isSelected(item),
37332
- draggable: 'true',
37333
- onDragStart: function onDragStart(e) {
37334
- return _onDragStart(e, i);
37335
- },
37336
- onDragEnd: onDragEnd,
37337
- tabIndex: props.tabIndex,
37338
- 'data-p-highlight': isSelected(item)
37339
- }, getPTOptions(item, 'item'));
37340
37426
  if (props.dragdrop) {
37427
+ var itemProps = mergeProps({
37428
+ className: classNames(props.className, cx('item', {
37429
+ item: item,
37430
+ isSelected: isSelected
37431
+ })),
37432
+ onClick: function onClick(e) {
37433
+ return props.onItemClick({
37434
+ originalEvent: e,
37435
+ value: item,
37436
+ index: i
37437
+ });
37438
+ },
37439
+ onKeyDown: function onKeyDown(e) {
37440
+ return props.onItemKeyDown({
37441
+ originalEvent: e,
37442
+ value: item,
37443
+ index: i
37444
+ });
37445
+ },
37446
+ role: 'option',
37447
+ 'aria-selected': isSelected(item),
37448
+ draggable: 'true',
37449
+ onDragStart: function onDragStart(e) {
37450
+ return _onDragStart(e, i);
37451
+ },
37452
+ onDragEnd: onDragEnd,
37453
+ tabIndex: props.tabIndex,
37454
+ 'data-p-highlight': isSelected(item)
37455
+ }, getPTOptions(item, 'item'));
37341
37456
  var items = [];
37342
37457
  if (i === 0) {
37343
37458
  items.push(createDropPoint(item, i));
37344
37459
  }
37345
37460
  items.push( /*#__PURE__*/React__namespace.createElement("li", _extends({
37346
37461
  key: key
37347
- }, itemProps), content, /*#__PURE__*/React__namespace.createElement(Ripple, null)));
37462
+ }, itemProps), content));
37348
37463
  items.push(createDropPoint(i, key + '_droppoint'));
37349
37464
  return items;
37350
37465
  } else {
@@ -37374,7 +37489,7 @@ var OrderListSubList = /*#__PURE__*/React__namespace.memo(function (props) {
37374
37489
  }, getPTOptions(item, 'item'));
37375
37490
  return /*#__PURE__*/React__namespace.createElement("li", _extends({
37376
37491
  key: key
37377
- }, _itemProps), content);
37492
+ }, _itemProps), content, /*#__PURE__*/React__namespace.createElement(Ripple, null));
37378
37493
  }
37379
37494
  });
37380
37495
  }
@@ -38532,7 +38647,7 @@ var Panel = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
38532
38647
  id: idState,
38533
38648
  ref: elementRef,
38534
38649
  style: props.style,
38535
- className: cx('root')
38650
+ className: classNames(props.className, cx('root'))
38536
38651
  }, PanelBase.getOtherProps(props), ptm('root'));
38537
38652
  var header = createHeader();
38538
38653
  var content = createContent();
@@ -41003,7 +41118,7 @@ var ScrollPanelBase = ComponentBase.extend({
41003
41118
  barx: 'p-scrollpanel-bar p-scrollpanel-bar-x',
41004
41119
  bary: 'p-scrollpanel-bar p-scrollpanel-bar-y'
41005
41120
  },
41006
- styles: "\n @layer primereact {\n .p-scrollpanel-wrapper {\n overflow: hidden;\n width: 100%;\n height: 100%;\n position: relative;\n z-index: 1;\n float: left;\n }\n \n .p-scrollpanel-content {\n height: calc(100% + 18px);\n width: calc(100% + 18px);\n padding: 0 18px 18px 0;\n position: relative;\n overflow: hidden;\n box-sizing: border-box;\n }\n \n .p-scrollpanel-bar {\n position: relative;\n background: #c1c1c1;\n border-radius: 3px;\n z-index: 2;\n cursor: pointer;\n opacity: 0;\n transition: opacity 0.25s linear;\n }\n \n .p-scrollpanel-bar-y {\n width: 9px;\n top: 0;\n }\n \n .p-scrollpanel-bar-x {\n height: 9px;\n bottom: 0;\n }\n \n .p-scrollpanel-hidden {\n visibility: hidden;\n }\n \n .p-scrollpanel:hover .p-scrollpanel-bar,\n .p-scrollpanel:active .p-scrollpanel-bar {\n opacity: 1;\n }\n \n .p-scrollpanel-grabbed {\n user-select: none;\n }\n }\n "
41121
+ styles: "\n @layer primereact {\n .p-scrollpanel-wrapper {\n overflow: hidden;\n width: 100%;\n height: 100%;\n position: relative;\n z-index: 1;\n float: left;\n }\n \n .p-scrollpanel-content {\n height: calc(100% + 18px);\n width: calc(100% + 18px);\n padding: 0 18px 18px 0;\n position: relative;\n overflow: auto;\n box-sizing: border-box;\n }\n \n .p-scrollpanel-bar {\n position: relative;\n background: #c1c1c1;\n border-radius: 3px;\n z-index: 2;\n cursor: pointer;\n opacity: 0;\n transition: opacity 0.25s linear;\n }\n \n .p-scrollpanel-bar-y {\n width: 9px;\n top: 0;\n }\n \n .p-scrollpanel-bar-x {\n height: 9px;\n bottom: 0;\n }\n \n .p-scrollpanel-hidden {\n visibility: hidden;\n }\n \n .p-scrollpanel:hover .p-scrollpanel-bar,\n .p-scrollpanel:active .p-scrollpanel-bar {\n opacity: 1;\n }\n \n .p-scrollpanel-grabbed {\n user-select: none;\n }\n }\n "
41007
41122
  }
41008
41123
  });
41009
41124
 
@@ -41167,7 +41282,6 @@ var ScrollPanel = /*#__PURE__*/React__namespace.forwardRef(function (inProps, re
41167
41282
  }, ptm('wrapper'));
41168
41283
  var contentProps = mergeProps({
41169
41284
  className: cx('content'),
41170
- ref: contentRef,
41171
41285
  onScroll: moveBar,
41172
41286
  onMouseEnter: moveBar
41173
41287
  }, ptm('content'));
@@ -41181,7 +41295,9 @@ var ScrollPanel = /*#__PURE__*/React__namespace.forwardRef(function (inProps, re
41181
41295
  className: cx('bary'),
41182
41296
  onMouseDown: onYBarMouseDown
41183
41297
  }, ptm('bary'));
41184
- return /*#__PURE__*/React__namespace.createElement("div", rootProps, /*#__PURE__*/React__namespace.createElement("div", wrapperProps, /*#__PURE__*/React__namespace.createElement("div", contentProps, props.children)), /*#__PURE__*/React__namespace.createElement("div", barXProps), /*#__PURE__*/React__namespace.createElement("div", barYProps));
41298
+ return /*#__PURE__*/React__namespace.createElement("div", rootProps, /*#__PURE__*/React__namespace.createElement("div", wrapperProps, /*#__PURE__*/React__namespace.createElement("div", _extends({
41299
+ ref: contentRef
41300
+ }, contentProps), props.children)), /*#__PURE__*/React__namespace.createElement("div", barXProps), /*#__PURE__*/React__namespace.createElement("div", barYProps));
41185
41301
  });
41186
41302
  ScrollPanel.displayName = 'ScrollPanel';
41187
41303
 
@@ -41359,6 +41475,7 @@ var SelectButtonBase = ComponentBase.extend({
41359
41475
  tabIndex: null,
41360
41476
  multiple: false,
41361
41477
  unselectable: true,
41478
+ allowEmpty: true,
41362
41479
  disabled: false,
41363
41480
  style: null,
41364
41481
  className: null,
@@ -41451,7 +41568,7 @@ var SelectButton = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__names
41451
41568
  return;
41452
41569
  }
41453
41570
  var selected = isSelected(event.option);
41454
- if (selected && !props.unselectable) {
41571
+ if (selected && !(props.unselectable && props.allowEmpty)) {
41455
41572
  return;
41456
41573
  }
41457
41574
  var optionValue = getOptionValue(event.option);
@@ -41734,15 +41851,13 @@ var Sidebar = /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
41734
41851
  bindDocumentClickListener();
41735
41852
  }
41736
41853
  if (props.blockScroll) {
41737
- DomHandler.addClass(document.body, 'p-overflow-hidden');
41738
- document.body.style.setProperty('--scrollbar-width', DomHandler.calculateScrollbarWidth() + 'px');
41854
+ DomHandler.blockBodyScroll();
41739
41855
  }
41740
41856
  };
41741
41857
  var disableDocumentSettings = function disableDocumentSettings() {
41742
41858
  unbindDocumentClickListener();
41743
41859
  if (props.blockScroll) {
41744
- DomHandler.removeClass(document.body, 'p-overflow-hidden');
41745
- document.body.style.removeProperty('--scrollbar-width');
41860
+ DomHandler.unblockBodyScroll();
41746
41861
  }
41747
41862
  };
41748
41863
  React__namespace.useImperativeHandle(ref, function () {
@@ -42673,8 +42788,8 @@ var Slider = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.f
42673
42788
  bottomValue = ObjectUtils.isEmpty(bottomValue) ? null : bottomValue;
42674
42789
  var style = {
42675
42790
  transition: dragging.current ? 'none' : null,
42676
- left: leftValue && leftValue + '%',
42677
- bottom: bottomValue && bottomValue + '%'
42791
+ left: leftValue != null && leftValue + '%',
42792
+ bottom: bottomValue != null && bottomValue + '%'
42678
42793
  };
42679
42794
  var handleProps = mergeProps(_objectSpread$o({
42680
42795
  className: cx('handle', {
@@ -42699,7 +42814,7 @@ var Slider = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.f
42699
42814
  },
42700
42815
  'aria-valuemin': props.min,
42701
42816
  'aria-valuemax': props.max,
42702
- 'aria-valuenow': leftValue || bottomValue,
42817
+ 'aria-valuenow': leftValue || bottomValue || 0,
42703
42818
  'aria-orientation': props.orientation
42704
42819
  }, ariaProps), ptm('handle'));
42705
42820
  return /*#__PURE__*/React__namespace.createElement("span", handleProps);
@@ -46336,12 +46451,14 @@ var Toast = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.fo
46336
46451
  });
46337
46452
  };
46338
46453
  var remove = function remove(messageInfo) {
46339
- setMessagesState(function (m) {
46340
- return m.filter(function (msg) {
46341
- return msg._pId !== messageInfo._pId;
46454
+ // allow removal by ID or by message equality
46455
+ var removeMessage = messageInfo._pId ? messageInfo.message : messageInfo;
46456
+ setMessagesState(function (prev) {
46457
+ return prev.filter(function (msg) {
46458
+ return msg._pId !== messageInfo._pId && !ObjectUtils.deepEquals(msg.message, removeMessage);
46342
46459
  });
46343
46460
  });
46344
- props.onRemove && props.onRemove(messageInfo.message);
46461
+ props.onRemove && props.onRemove(removeMessage);
46345
46462
  };
46346
46463
  var onClose = function onClose(messageInfo) {
46347
46464
  remove(messageInfo);
@@ -47493,9 +47610,31 @@ var Tree = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.for
47493
47610
  var onDragEnd = function onDragEnd() {
47494
47611
  dragState.current = null;
47495
47612
  };
47613
+
47614
+ /**
47615
+ * Deep copy a value. If the value has a data property, it will be shallow copied.
47616
+ * Values that are not plain objects or arrays are returned as-is.
47617
+ */
47618
+ var cloneValue = function cloneValue(value) {
47619
+ if (Array.isArray(value)) {
47620
+ return value.map(cloneValue);
47621
+ } else if (!!value && Object.getPrototypeOf(value) === Object.prototype) {
47622
+ var result = {};
47623
+
47624
+ // Leave data property alone and clone children
47625
+ for (var key in value) {
47626
+ if (key !== 'data') {
47627
+ result[key] = cloneValue(value[key]);
47628
+ } else {
47629
+ result[key] = value[key];
47630
+ }
47631
+ }
47632
+ return result;
47633
+ } else return value;
47634
+ };
47496
47635
  var onDrop = function onDrop(event) {
47497
47636
  if (validateDropNode(dragState.current.path, event.path)) {
47498
- var value = JSON.parse(JSON.stringify(props.value));
47637
+ var value = cloneValue(props.value);
47499
47638
  var dragPaths = dragState.current.path.split('-');
47500
47639
  dragPaths.pop();
47501
47640
  var dragNodeParent = findNode(value, dragPaths);
@@ -47516,7 +47655,7 @@ var Tree = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.for
47516
47655
  };
47517
47656
  var onDropPoint = function onDropPoint(event) {
47518
47657
  if (validateDropPoint(event)) {
47519
- var value = JSON.parse(JSON.stringify(props.value));
47658
+ var value = cloneValue(props.value);
47520
47659
  var dragPaths = dragState.current.path.split('-');
47521
47660
  dragPaths.pop();
47522
47661
  var dropPaths = event.path.split('-');