primereact 10.3.2 → 10.4.0

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 (161) hide show
  1. package/accordion/accordion.cjs.js +1 -1
  2. package/accordion/accordion.cjs.min.js +1 -1
  3. package/accordion/accordion.esm.js +1 -1
  4. package/accordion/accordion.esm.min.js +1 -1
  5. package/accordion/accordion.js +1 -1
  6. package/accordion/accordion.min.js +1 -1
  7. package/api/api.cjs.js +20 -0
  8. package/api/api.cjs.min.js +1 -1
  9. package/api/api.d.ts +5 -1
  10. package/api/api.esm.js +20 -0
  11. package/api/api.esm.min.js +1 -1
  12. package/api/api.js +20 -0
  13. package/api/api.min.js +1 -1
  14. package/calendar/calendar.cjs.js +509 -150
  15. package/calendar/calendar.cjs.min.js +1 -1
  16. package/calendar/calendar.d.ts +4 -0
  17. package/calendar/calendar.esm.js +510 -151
  18. package/calendar/calendar.esm.min.js +1 -1
  19. package/calendar/calendar.js +509 -150
  20. package/calendar/calendar.min.js +1 -1
  21. package/carousel/carousel.cjs.js +1 -0
  22. package/carousel/carousel.cjs.min.js +1 -1
  23. package/carousel/carousel.esm.js +1 -0
  24. package/carousel/carousel.esm.min.js +1 -1
  25. package/carousel/carousel.js +1 -0
  26. package/carousel/carousel.min.js +1 -1
  27. package/chips/chips.cjs.js +2 -1
  28. package/chips/chips.cjs.min.js +1 -1
  29. package/chips/chips.esm.js +2 -1
  30. package/chips/chips.esm.min.js +1 -1
  31. package/chips/chips.js +2 -1
  32. package/chips/chips.min.js +1 -1
  33. package/contextmenu/contextmenu.cjs.js +4 -4
  34. package/contextmenu/contextmenu.cjs.min.js +1 -1
  35. package/contextmenu/contextmenu.esm.js +4 -4
  36. package/contextmenu/contextmenu.esm.min.js +1 -1
  37. package/contextmenu/contextmenu.js +4 -4
  38. package/contextmenu/contextmenu.min.js +1 -1
  39. package/core/core.js +93 -40
  40. package/core/core.min.js +4 -4
  41. package/datatable/datatable.cjs.js +577 -150
  42. package/datatable/datatable.cjs.min.js +1 -1
  43. package/datatable/datatable.esm.js +573 -146
  44. package/datatable/datatable.esm.min.js +1 -1
  45. package/datatable/datatable.js +577 -150
  46. package/datatable/datatable.min.js +1 -1
  47. package/dataview/dataview.cjs.js +27 -25
  48. package/dataview/dataview.cjs.min.js +1 -1
  49. package/dataview/dataview.d.ts +7 -1
  50. package/dataview/dataview.esm.js +27 -25
  51. package/dataview/dataview.esm.min.js +1 -1
  52. package/dataview/dataview.js +27 -25
  53. package/dataview/dataview.min.js +1 -1
  54. package/divider/divider.cjs.js +2 -2
  55. package/divider/divider.cjs.min.js +1 -1
  56. package/divider/divider.esm.js +2 -2
  57. package/divider/divider.esm.min.js +1 -1
  58. package/divider/divider.js +2 -2
  59. package/divider/divider.min.js +1 -1
  60. package/dropdown/dropdown.cjs.js +20 -25
  61. package/dropdown/dropdown.cjs.min.js +1 -1
  62. package/dropdown/dropdown.d.ts +9 -0
  63. package/dropdown/dropdown.esm.js +20 -25
  64. package/dropdown/dropdown.esm.min.js +1 -1
  65. package/dropdown/dropdown.js +20 -25
  66. package/dropdown/dropdown.min.js +1 -1
  67. package/editor/editor.cjs.js +1 -1
  68. package/editor/editor.cjs.min.js +1 -1
  69. package/editor/editor.esm.js +1 -1
  70. package/editor/editor.esm.min.js +1 -1
  71. package/editor/editor.js +1 -1
  72. package/editor/editor.min.js +1 -1
  73. package/focustrap/focustrap.cjs.js +168 -0
  74. package/focustrap/focustrap.cjs.min.js +1 -0
  75. package/focustrap/focustrap.esm.js +159 -0
  76. package/focustrap/focustrap.esm.min.js +1 -0
  77. package/focustrap/focustrap.js +167 -0
  78. package/focustrap/focustrap.min.js +1 -0
  79. package/focustrap/package.json +7 -0
  80. package/galleria/galleria.cjs.js +26 -24
  81. package/galleria/galleria.cjs.min.js +1 -1
  82. package/galleria/galleria.esm.js +26 -24
  83. package/galleria/galleria.esm.min.js +1 -1
  84. package/galleria/galleria.js +26 -24
  85. package/galleria/galleria.min.js +1 -1
  86. package/hooks/hooks.d.ts +1 -1
  87. package/menubar/menubar.cjs.js +7 -4
  88. package/menubar/menubar.cjs.min.js +1 -1
  89. package/menubar/menubar.esm.js +7 -4
  90. package/menubar/menubar.esm.min.js +1 -1
  91. package/menubar/menubar.js +7 -4
  92. package/menubar/menubar.min.js +1 -1
  93. package/package.json +1 -1
  94. package/paginator/paginator.cjs.js +20 -0
  95. package/paginator/paginator.cjs.min.js +1 -1
  96. package/paginator/paginator.esm.js +20 -0
  97. package/paginator/paginator.esm.min.js +1 -1
  98. package/paginator/paginator.js +20 -0
  99. package/paginator/paginator.min.js +1 -1
  100. package/panelmenu/panelmenu.cjs.js +32 -21
  101. package/panelmenu/panelmenu.cjs.min.js +1 -1
  102. package/panelmenu/panelmenu.esm.js +32 -21
  103. package/panelmenu/panelmenu.esm.min.js +1 -1
  104. package/panelmenu/panelmenu.js +32 -21
  105. package/panelmenu/panelmenu.min.js +1 -1
  106. package/picklist/picklist.cjs.js +20 -0
  107. package/picklist/picklist.cjs.min.js +1 -1
  108. package/picklist/picklist.esm.js +20 -0
  109. package/picklist/picklist.esm.min.js +1 -1
  110. package/picklist/picklist.js +20 -0
  111. package/picklist/picklist.min.js +1 -1
  112. package/primereact.all.cjs.js +1499 -725
  113. package/primereact.all.cjs.min.js +1 -1
  114. package/primereact.all.esm.js +1499 -725
  115. package/primereact.all.esm.min.js +1 -1
  116. package/primereact.all.js +1499 -725
  117. package/primereact.all.min.js +1 -1
  118. package/sidebar/sidebar.cjs.js +18 -16
  119. package/sidebar/sidebar.cjs.min.js +1 -1
  120. package/sidebar/sidebar.esm.js +18 -16
  121. package/sidebar/sidebar.esm.min.js +1 -1
  122. package/sidebar/sidebar.js +18 -16
  123. package/sidebar/sidebar.min.js +1 -1
  124. package/splitbutton/splitbutton.cjs.js +8 -7
  125. package/splitbutton/splitbutton.cjs.min.js +1 -1
  126. package/splitbutton/splitbutton.esm.js +8 -7
  127. package/splitbutton/splitbutton.esm.min.js +1 -1
  128. package/splitbutton/splitbutton.js +8 -7
  129. package/splitbutton/splitbutton.min.js +1 -1
  130. package/splitter/splitter.cjs.js +57 -12
  131. package/splitter/splitter.cjs.min.js +1 -1
  132. package/splitter/splitter.d.ts +13 -1
  133. package/splitter/splitter.esm.js +59 -14
  134. package/splitter/splitter.esm.min.js +1 -1
  135. package/splitter/splitter.js +57 -12
  136. package/splitter/splitter.min.js +1 -1
  137. package/tieredmenu/tieredmenu.cjs.js +8 -7
  138. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  139. package/tieredmenu/tieredmenu.esm.js +8 -7
  140. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  141. package/tieredmenu/tieredmenu.js +8 -7
  142. package/tieredmenu/tieredmenu.min.js +1 -1
  143. package/toast/toast.cjs.js +20 -0
  144. package/toast/toast.cjs.min.js +1 -1
  145. package/toast/toast.esm.js +20 -0
  146. package/toast/toast.esm.min.js +1 -1
  147. package/toast/toast.js +20 -0
  148. package/toast/toast.min.js +1 -1
  149. package/tree/tree.cjs.js +33 -15
  150. package/tree/tree.cjs.min.js +1 -1
  151. package/tree/tree.esm.js +34 -16
  152. package/tree/tree.esm.min.js +1 -1
  153. package/tree/tree.js +33 -15
  154. package/tree/tree.min.js +1 -1
  155. package/treetable/treetable.cjs.js +205 -68
  156. package/treetable/treetable.cjs.min.js +1 -1
  157. package/treetable/treetable.esm.js +206 -69
  158. package/treetable/treetable.esm.min.js +1 -1
  159. package/treetable/treetable.js +205 -68
  160. package/treetable/treetable.min.js +1 -1
  161. package/web-types.json +34 -1
@@ -105,7 +105,19 @@ export interface SplitterPassThroughOptions {
105
105
  * Defines valid properties in SplitterPanel component.
106
106
  * @group Properties
107
107
  */
108
- interface SplitterPanelProps {
108
+ interface SplitterPanelProps extends Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, 'ref'> {
109
+ /**
110
+ * Returns the value of element's id content attribute. Can be set to change it.
111
+ */
112
+ id?: string;
113
+ /**
114
+ * Establishes relationships between the splitter and panel label element IDs.
115
+ */
116
+ 'aria-labelledby'?: string | undefined;
117
+ /**
118
+ * Splitter handle ARIA label for screenreader support.
119
+ */
120
+ 'aria-label'?: string | undefined;
109
121
  /**
110
122
  * Size of the element relative to 100%.
111
123
  */
@@ -2,8 +2,8 @@
2
2
  import * as React from 'react';
3
3
  import { PrimeReactContext } from 'primereact/api';
4
4
  import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
5
- import { useMergeProps, useEventListener } from 'primereact/hooks';
6
- import { ObjectUtils, classNames, DomHandler } from 'primereact/utils';
5
+ import { useMergeProps, useEventListener, useMountEffect } from 'primereact/hooks';
6
+ import { ObjectUtils, classNames, DomHandler, UniqueComponentId } from 'primereact/utils';
7
7
 
8
8
  function _extends() {
9
9
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -190,6 +190,7 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
190
190
  var mergeProps = useMergeProps();
191
191
  var context = React.useContext(PrimeReactContext);
192
192
  var props = SplitterBase.getProps(inProps, context);
193
+ var idState = React.useRef('');
193
194
  var elementRef = React.useRef(null);
194
195
  var gutterRef = React.useRef();
195
196
  var gutterRefs = React.useRef({});
@@ -356,13 +357,7 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
356
357
  newPrevPanelSize = prevPanelSize.current + newPos;
357
358
  newNextPanelSize = nextPanelSize.current - newPos;
358
359
  }
359
- if (validateResize(newPrevPanelSize, newNextPanelSize)) {
360
- prevPanelSizeNew.current = newPrevPanelSize;
361
- nextPanelSizeNew.current = newNextPanelSize;
362
- prevPanelElement.current.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
363
- nextPanelElement.current.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
364
- prevSize.current = parseFloat(newPrevPanelSize).toFixed(4);
365
- }
360
+ resizePanel(prevPanelIndex.current, newPrevPanelSize, newNextPanelSize);
366
361
  };
367
362
  var onResizeEnd = function onResizeEnd(event) {
368
363
  setPanelSizes(function (prev) {
@@ -392,6 +387,7 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
392
387
  onResizeEnd();
393
388
  };
394
389
  var onGutterKeyDown = function onGutterKeyDown(event, index) {
390
+ var minSize = props.children[index].props && props.children[index].props.minSize || 0;
395
391
  switch (event.code) {
396
392
  case 'ArrowLeft':
397
393
  {
@@ -425,6 +421,42 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
425
421
  event.preventDefault();
426
422
  break;
427
423
  }
424
+ case 'Home':
425
+ {
426
+ resizePanel(index, 100, minSize);
427
+ event.preventDefault();
428
+ break;
429
+ }
430
+ case 'End':
431
+ {
432
+ resizePanel(index, minSize, 100);
433
+ event.preventDefault();
434
+ break;
435
+ }
436
+ case 'Enter':
437
+ {
438
+ if (prevSize.current > 99) {
439
+ resizePanel(index, minSize, 100);
440
+ } else {
441
+ resizePanel(index, 100, minSize);
442
+ }
443
+ event.preventDefault();
444
+ break;
445
+ }
446
+ }
447
+ };
448
+ var resizePanel = function resizePanel(index, newPrevPanelSize, newNextPanelSize) {
449
+ prevPanelIndex.current = index;
450
+ gutterRef.current = gutterRefs.current[index];
451
+ size.current = horizontal ? DomHandler.getWidth(elementRef.current) : DomHandler.getHeight(elementRef.current);
452
+ prevPanelElement.current = gutterRef.current.previousElementSibling;
453
+ nextPanelElement.current = gutterRef.current.nextElementSibling;
454
+ if (validateResize(newPrevPanelSize, newNextPanelSize)) {
455
+ prevPanelSizeNew.current = newPrevPanelSize;
456
+ nextPanelSizeNew.current = newNextPanelSize;
457
+ prevPanelElement.current.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
458
+ nextPanelElement.current.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
459
+ prevSize.current = parseFloat(newPrevPanelSize).toFixed(4);
428
460
  }
429
461
  };
430
462
  var repeat = function repeat(event, index, step) {
@@ -470,6 +502,11 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
470
502
  }
471
503
  };
472
504
  });
505
+ useMountEffect(function () {
506
+ if (elementRef.current) {
507
+ idState.current = UniqueComponentId();
508
+ }
509
+ });
473
510
  React.useEffect(function () {
474
511
  var panelElements = _toConsumableArray(elementRef.current.children).filter(function (child) {
475
512
  return DomHandler.getAttribute(child, 'data-pc-section') === 'splitterpanel.root';
@@ -488,6 +525,7 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
488
525
  if (isStateful) restoreState();
489
526
  }, [restoreState, isStateful]);
490
527
  var createPanel = function createPanel(panel, index) {
528
+ var panelId = getPanelProp(panel, 'id') || "".concat(idState.current, "_").concat(index);
491
529
  var panelClassName = classNames(getPanelProp(panel, 'className'), cx('panel.root'));
492
530
  var gutterProps = mergeProps({
493
531
  ref: function ref(el) {
@@ -515,19 +553,26 @@ var Splitter = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
515
553
  onTouchEnd: function onTouchEnd(event) {
516
554
  return onGutterTouchEnd(event);
517
555
  },
518
- 'data-p-splitter-gutter-resizing': false
556
+ 'data-p-splitter-gutter-resizing': false,
557
+ role: 'separator'
519
558
  }, ptm('gutter'));
520
559
  var gutterHandlerProps = mergeProps({
521
- tabIndex: 0,
560
+ tabIndex: getPanelProp(panel, 'tabIndex') || 0,
522
561
  className: cx('gutterHandler'),
523
- 'aria-orientation': props.layout,
524
- 'aria-valuenow': prevSize.current
562
+ 'aria-orientation': props.layout === 'horizontal' ? 'vertical' : 'horizontal',
563
+ 'aria-controls': panelId,
564
+ 'aria-label': getPanelProp(panel, 'aria-label'),
565
+ 'aria-labelledby': getPanelProp(panel, 'aria-labelledby'),
566
+ 'aria-valuenow': prevSize.current,
567
+ 'aria-valuetext': parseFloat(prevSize.current).toFixed(0) + '%',
568
+ 'aria-valuemin': getPanelProp(panel, 'minSize') || '0',
569
+ 'aria-valuemax': '100'
525
570
  }, ptm('gutterHandler'));
526
571
  var gutter = index !== props.children.length - 1 && /*#__PURE__*/React.createElement("div", gutterProps, /*#__PURE__*/React.createElement("div", gutterHandlerProps));
527
572
  var flexBasis = 'calc(' + panelSize(panelSizes, index) + '% - ' + (childrenLength - 1) * props.gutterSize + 'px)';
528
573
  var rootProps = mergeProps({
529
574
  key: index,
530
- id: getPanelProp(panel, 'id'),
575
+ id: panelId,
531
576
  className: panelClassName,
532
577
  style: _objectSpread(_objectSpread({}, getPanelProp(panel, 'style')), {}, {
533
578
  flexBasis: flexBasis
@@ -1 +1 @@
1
- import*as e from"react";import{PrimeReactContext as t}from"primereact/api";import{ComponentBase as r,useHandleStyle as n}from"primereact/componentbase";import{useMergeProps as u,useEventListener as i}from"primereact/hooks";import{ObjectUtils as o,classNames as l,DomHandler as c}from"primereact/utils";function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},s.apply(this,arguments)}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function p(e){if(Array.isArray(e))return a(e)}function f(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function d(e,t){if(e){if("string"==typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,t):void 0}}function g(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function h(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function y(e){var t=h(e,"string");return"symbol"===m(t)?t:String(t)}function v(e){if(Array.isArray(e))return e}function b(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,u,i,o,l=[],c=!0,s=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){s=!0,u=e}finally{try{if(!c&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(s)throw u}}return l}}function w(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function S(e,t){return v(e)||b(e,t)||d(e,t)||w()}var z=r.extend({defaultProps:{__TYPE:"Splitter",className:null,gutterSize:4,id:null,step:5,layout:"horizontal",onResizeEnd:null,stateKey:null,stateStorage:"session",style:null,children:void 0},css:{classes:{root:function(e){return l("p-splitter p-component p-splitter-".concat(e.props.layout))},gutter:"p-splitter-gutter",gutterHandler:"p-splitter-gutter-handle",panel:{root:"p-splitter-panel"}},styles:"\n@layer primereact {\n .p-splitter {\n display: flex;\n flex-wrap: nowrap;\n }\n\n .p-splitter-vertical {\n flex-direction: column;\n }\n\n .p-splitter-panel {\n flex-grow: 1;\n }\n\n .p-splitter-panel-nested {\n display: flex;\n }\n\n .p-splitter-panel .p-splitter {\n flex-grow: 1;\n border: 0 none;\n }\n\n .p-splitter-gutter {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: col-resize;\n }\n\n .p-splitter-horizontal.p-splitter-resizing {\n cursor: col-resize;\n user-select: none;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter > .p-splitter-gutter-handle {\n height: 24px;\n width: 100%;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter {\n cursor: col-resize;\n }\n\n .p-splitter-vertical.p-splitter-resizing {\n cursor: row-resize;\n user-select: none;\n }\n\n .p-splitter-vertical > .p-splitter-gutter {\n cursor: row-resize;\n }\n\n .p-splitter-vertical > .p-splitter-gutter > .p-splitter-gutter-handle {\n width: 24px;\n height: 100%;\n }\n}\n\n"}}),O=r.extend({defaultProps:{__TYPE:"SplitterPanel",className:null,minSize:null,size:null,style:null,children:void 0},getCProps:function(e){return o.getComponentProps(e,O.defaultProps)},getCOtherProps:function(e){return o.getComponentDiffProps(e,O.defaultProps)},getCProp:function(e,t){return o.getComponentProp(e,t,O.defaultProps)}});function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function P(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach((function(t){var n,u,i;n=e,i=r[t],(u=y(u=t))in n?Object.defineProperty(n,u,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[u]=i})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var x=function(){},j=e.memo(e.forwardRef((function(r,a){var m=u(),h=e.useContext(t),y=z.getProps(r,h),v=e.useRef(null),b=e.useRef(),w=e.useRef({}),E=e.useRef(null),x=e.useRef(null),j=e.useRef(null),A=e.useRef(null),R=e.useRef(null),C=e.useRef(null),N=e.useRef(null),D=e.useRef(null),k=e.useRef(null),T=e.useRef(null),H=e.useRef(null),I=e.useRef(null),K=S(e.useState([]),2),Y=K[0],L=K[1],W=S(e.useState(!1),2),M=W[0],U=W[1],X=null!=y.stateKey,_=y.children&&y.children.length||1,B=function(e,t){return t in e?e[t]:y.children&&[].concat(y.children)[t].props.size||100/_},F={props:y,state:{panelSizes:Y,nested:!0===c.getAttribute(v.current&&v.current.parentElement,"data-p-splitter-panel-nested")}},J=z.setMetaData(P({},F)),$=J.ptm,q=J.cx,G=J.isUnstyled;n(z.css.styles,G,{name:"splitter"});var Q=S(i({type:"mousemove",listener:function(e){return ae(e)}}),2),V=Q[0],Z=Q[1],ee=S(i({type:"mouseup",listener:function(e){pe(e),ne()}}),2),te=ee[0],re=ee[1],ne=function(){Z(),re()},ue=function(e,t){return O.getCProp(e,t)},ie=function(e,t){return!(e>100||e<0)&&(!(t>100||t<0)&&(!(y.children[H.current].props&&y.children[H.current].props.minSize&&y.children[H.current].props.minSize>e)&&!(y.children[H.current+1].props&&y.children[H.current+1].props.minSize&&y.children[H.current+1].props.minSize>t)))},oe=e.useCallback((function(){switch(y.stateStorage){case"local":return window.localStorage;case"session":return window.sessionStorage;default:throw new Error(y.stateStorage+' is not a valid value for the state storage, supported values are "local" and "session".')}}),[y.stateStorage]),le=function(e){o.isArray(e)&&oe().setItem(y.stateKey,JSON.stringify(e))},ce=e.useCallback((function(){var e=oe().getItem(y.stateKey);e&&L(JSON.parse(e))}),[oe,y.stateKey]),se=function(e,t,r){b.current=w.current[t];var n="touchstart"===e.type?e.touches[0].pageX:e.pageX,u="touchstart"===e.type?e.touches[0].pageY:e.pageY,i="horizontal"===y.layout;E.current=i?c.getWidth(v.current):c.getHeight(v.current),x.current=!0,j.current=i?n:u,A.current=b.current.previousElementSibling,R.current=b.current.nextElementSibling,r?(C.current=i?c.getOuterWidth(A.current,!0):c.getOuterHeight(A.current,!0),k.current=i?c.getOuterWidth(R.current,!0):c.getOuterHeight(R.current,!0)):(C.current=100*(i?c.getOuterWidth(A.current,!0):c.getOuterHeight(A.current,!0))/E.current,k.current=100*(i?c.getOuterWidth(R.current,!0):c.getOuterHeight(R.current,!0))/E.current),D.current=C.current,T.current=k.current,H.current=t,!G()&&c.addClass(b.current,"p-splitter-gutter-resizing"),b.current.setAttribute("data-p-splitter-gutter-resizing",!0),!G()&&c.addClass(v.current,"p-splitter-resizing"),v.current.setAttribute("data-p-splitter-resizing",!0)},ae=function(e){var t,r,n,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i="horizontal"===y.layout;arguments.length>2&&void 0!==arguments[2]&&arguments[2]?i?(n=100*(C.current+u)/E.current,r=100*(k.current-u)/E.current):(n=100*(C.current-u)/E.current,r=100*(k.current+u)/E.current):(n=C.current+(t=i?100*("touchmove"===e.type?e.touches[0].pageX:e.pageX)/E.current-100*j.current/E.current:100*("touchmove"===e.type?e.touches[0].pageY:e.pageY)/E.current-100*j.current/E.current),r=k.current-t),ie(n,r)&&(D.current=n,T.current=r,A.current.style.flexBasis="calc("+n+"% - "+(y.children.length-1)*y.gutterSize+"px)",R.current.style.flexBasis="calc("+r+"% - "+(y.children.length-1)*y.gutterSize+"px)",N.current=parseFloat(n).toFixed(4))},pe=function(e){L((function(t){for(var r=[],n=0;n<y.children.length;n++)r[n]=B(t,n);return r[H.current]=D.current,r[H.current+1]=T.current,y.onResizeEnd&&y.onResizeEnd({originalEvent:e,sizes:r}),X&&le(r),r})),!G()&&c.removeClass(b.current,"p-splitter-gutter-resizing"),w.current&&Object.keys(w.current).forEach((function(e){return w.current[e].setAttribute("data-p-splitter-gutter-resizing",!1)})),!G()&&c.removeClass(v.current,"p-splitter-resizing"),v.current.setAttribute("data-p-splitter-resizing",!1),x.current=!1,E.current=null,j.current=null,A.current=null,R.current=null,C.current=null,D.current=null,k.current=null,T.current=null,H.current=null},fe=function(){he(),pe()},de=function(e,t){switch(e.code){case"ArrowLeft":"horizontal"===y.layout&&me(e,t,-1*y.step),e.preventDefault();break;case"ArrowRight":"horizontal"===y.layout&&me(e,t,y.step),e.preventDefault();break;case"ArrowDown":"vertical"===y.layout&&me(e,t,-1*y.step),e.preventDefault();break;case"ArrowUp":"vertical"===y.layout&&me(e,t,y.step),e.preventDefault()}},ge=function(e,t,r){se(e,t,!0),ae(e,r,!0)},me=function(e,t,r){he(),I.current=setTimeout((function(){ge(e,t,r)}),40)},he=function(){I.current&&clearTimeout(I.current)},ye=function(e,t){se(e,t,!1),V(),te()},ve=function(e,t){se(e,t,!1),window.addEventListener("touchmove",be,{passive:!1,cancelable:!1}),window.addEventListener("touchend",we)},be=function(e){ae(e)},we=function e(t){pe(t),window.removeEventListener("touchmove",be),window.removeEventListener("touchend",e)};e.useImperativeHandle(a,(function(){return{props:y,getElement:function(){return v.current}}})),e.useEffect((function(){var e;(e=v.current.children,p(e)||f(e)||d(e)||g()).filter((function(e){return"splitterpanel.root"===c.getAttribute(e,"data-pc-section")})).map((function(e,t){N.current=B(Y,0),e.childNodes&&o.isNotEmpty(c.find(e,"[data-pc-name='splitter']")&&c.find(e,"[data-pc-section='root']"))&&(!G()&&c.addClass(e,"p-splitter-panel-nested"),e.setAttribute("data-p-splitter-panel-nested",!0),U(!0))}))}),[]),e.useEffect((function(){X&&ce()}),[ce,X]);var Se=function(t,r){var n=l(ue(t,"className"),q("panel.root")),u=m({ref:function(e){return w.current[r]=e},className:q("gutter"),style:"horizontal"===y.layout?{width:y.gutterSize+"px"}:{height:y.gutterSize+"px"},onMouseDown:function(e){return ye(e,r)},onKeyDown:function(e){return de(e,r)},onKeyUp:fe,onTouchStart:function(e){return ve(e,r)},onTouchMove:function(e){return be(e)},onTouchEnd:function(e){return we(e)},"data-p-splitter-gutter-resizing":!1},$("gutter")),i=m({tabIndex:0,className:q("gutterHandler"),"aria-orientation":y.layout,"aria-valuenow":N.current},$("gutterHandler")),o=r!==y.children.length-1&&e.createElement("div",u,e.createElement("div",i)),c="calc("+B(Y,r)+"% - "+(_-1)*y.gutterSize+"px)",s=m({key:r,id:ue(t,"id"),className:n,style:P(P({},ue(t,"style")),{},{flexBasis:c}),role:"presentation","data-p-splitter-panel-nested":!1},$("splitterpanel.root",{context:{nested:M}}));return e.createElement(e.Fragment,null,e.createElement("div",s,ue(t,"children")),o)},ze=m({id:y.id,style:y.style,className:l(y.className,q("root")),"data-p-splitter-resizing":!1},z.getOtherProps(y),$("root")),Oe=e.Children.map(y.children,Se);return e.createElement("div",s({ref:v},ze),Oe)})));x.displayName="SplitterPanel",j.displayName="Splitter";export{j as Splitter,x as SplitterPanel};
1
+ import*as e from"react";import{PrimeReactContext as t}from"primereact/api";import{ComponentBase as r,useHandleStyle as n}from"primereact/componentbase";import{useMergeProps as i,useEventListener as u,useMountEffect as o}from"primereact/hooks";import{ObjectUtils as l,classNames as a,DomHandler as c,UniqueComponentId as s}from"primereact/utils";function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},p.apply(this,arguments)}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function d(e){if(Array.isArray(e))return f(e)}function g(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function m(e,t){if(e){if("string"==typeof e)return f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}function h(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function v(e,t){if("object"!==y(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==y(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function b(e){var t=v(e,"string");return"symbol"===y(t)?t:String(t)}function w(e){if(Array.isArray(e))return e}function S(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,u,o,l=[],a=!0,c=!1;try{if(u=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;a=!1}else for(;!(a=(n=u.call(r)).done)&&(l.push(n.value),l.length!==t);a=!0);}catch(e){c=!0,i=e}finally{try{if(!a&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(c)throw i}}return l}}function z(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function O(e,t){return w(e)||S(e,t)||m(e,t)||z()}var x=r.extend({defaultProps:{__TYPE:"Splitter",className:null,gutterSize:4,id:null,step:5,layout:"horizontal",onResizeEnd:null,stateKey:null,stateStorage:"session",style:null,children:void 0},css:{classes:{root:function(e){return a("p-splitter p-component p-splitter-".concat(e.props.layout))},gutter:"p-splitter-gutter",gutterHandler:"p-splitter-gutter-handle",panel:{root:"p-splitter-panel"}},styles:"\n@layer primereact {\n .p-splitter {\n display: flex;\n flex-wrap: nowrap;\n }\n\n .p-splitter-vertical {\n flex-direction: column;\n }\n\n .p-splitter-panel {\n flex-grow: 1;\n }\n\n .p-splitter-panel-nested {\n display: flex;\n }\n\n .p-splitter-panel .p-splitter {\n flex-grow: 1;\n border: 0 none;\n }\n\n .p-splitter-gutter {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: col-resize;\n }\n\n .p-splitter-horizontal.p-splitter-resizing {\n cursor: col-resize;\n user-select: none;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter > .p-splitter-gutter-handle {\n height: 24px;\n width: 100%;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter {\n cursor: col-resize;\n }\n\n .p-splitter-vertical.p-splitter-resizing {\n cursor: row-resize;\n user-select: none;\n }\n\n .p-splitter-vertical > .p-splitter-gutter {\n cursor: row-resize;\n }\n\n .p-splitter-vertical > .p-splitter-gutter > .p-splitter-gutter-handle {\n width: 24px;\n height: 100%;\n }\n}\n\n"}}),E=r.extend({defaultProps:{__TYPE:"SplitterPanel",className:null,minSize:null,size:null,style:null,children:void 0},getCProps:function(e){return l.getComponentProps(e,E.defaultProps)},getCOtherProps:function(e){return l.getComponentDiffProps(e,E.defaultProps)},getCProp:function(e,t){return l.getComponentProp(e,t,E.defaultProps)}});function P(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?P(Object(r),!0).forEach((function(t){var n,i,u;n=e,u=r[t],(i=b(i=t))in n?Object.defineProperty(n,i,{value:u,enumerable:!0,configurable:!0,writable:!0}):n[i]=u})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):P(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var A=function(){},R=e.memo(e.forwardRef((function(r,f){var y=i(),v=e.useContext(t),b=x.getProps(r,v),w=e.useRef(""),S=e.useRef(null),z=e.useRef(),P=e.useRef({}),A=e.useRef(null),R=e.useRef(null),C=e.useRef(null),D=e.useRef(null),N=e.useRef(null),k=e.useRef(null),H=e.useRef(null),I=e.useRef(null),T=e.useRef(null),K=e.useRef(null),W=e.useRef(null),Y=e.useRef(null),F=O(e.useState([]),2),L=F[0],_=F[1],M=O(e.useState(!1),2),U=M[0],X=M[1],B=null!=b.stateKey,J=b.children&&b.children.length||1,$=function(e,t){return t in e?e[t]:b.children&&[].concat(b.children)[t].props.size||100/J},q={props:b,state:{panelSizes:L,nested:!0===c.getAttribute(S.current&&S.current.parentElement,"data-p-splitter-panel-nested")}},G=x.setMetaData(j({},q)),Q=G.ptm,V=G.cx,Z=G.isUnstyled;n(x.css.styles,Z,{name:"splitter"});var ee=O(u({type:"mousemove",listener:function(e){return de(e)}}),2),te=ee[0],re=ee[1],ne=O(u({type:"mouseup",listener:function(e){ge(e),oe()}}),2),ie=ne[0],ue=ne[1],oe=function(){re(),ue()},le=function(e,t){return E.getCProp(e,t)},ae=function(e,t){return!(e>100||e<0)&&(!(t>100||t<0)&&(!(b.children[W.current].props&&b.children[W.current].props.minSize&&b.children[W.current].props.minSize>e)&&!(b.children[W.current+1].props&&b.children[W.current+1].props.minSize&&b.children[W.current+1].props.minSize>t)))},ce=e.useCallback((function(){switch(b.stateStorage){case"local":return window.localStorage;case"session":return window.sessionStorage;default:throw new Error(b.stateStorage+' is not a valid value for the state storage, supported values are "local" and "session".')}}),[b.stateStorage]),se=function(e){l.isArray(e)&&ce().setItem(b.stateKey,JSON.stringify(e))},pe=e.useCallback((function(){var e=ce().getItem(b.stateKey);e&&_(JSON.parse(e))}),[ce,b.stateKey]),fe=function(e,t,r){z.current=P.current[t];var n="touchstart"===e.type?e.touches[0].pageX:e.pageX,i="touchstart"===e.type?e.touches[0].pageY:e.pageY,u="horizontal"===b.layout;A.current=u?c.getWidth(S.current):c.getHeight(S.current),R.current=!0,C.current=u?n:i,D.current=z.current.previousElementSibling,N.current=z.current.nextElementSibling,r?(k.current=u?c.getOuterWidth(D.current,!0):c.getOuterHeight(D.current,!0),T.current=u?c.getOuterWidth(N.current,!0):c.getOuterHeight(N.current,!0)):(k.current=100*(u?c.getOuterWidth(D.current,!0):c.getOuterHeight(D.current,!0))/A.current,T.current=100*(u?c.getOuterWidth(N.current,!0):c.getOuterHeight(N.current,!0))/A.current),I.current=k.current,K.current=T.current,W.current=t,!Z()&&c.addClass(z.current,"p-splitter-gutter-resizing"),z.current.setAttribute("data-p-splitter-gutter-resizing",!0),!Z()&&c.addClass(S.current,"p-splitter-resizing"),S.current.setAttribute("data-p-splitter-resizing",!0)},de=function(e){var t,r,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,u="horizontal"===b.layout;arguments.length>2&&void 0!==arguments[2]&&arguments[2]?u?(n=100*(k.current+i)/A.current,r=100*(T.current-i)/A.current):(n=100*(k.current-i)/A.current,r=100*(T.current+i)/A.current):(n=k.current+(t=u?100*("touchmove"===e.type?e.touches[0].pageX:e.pageX)/A.current-100*C.current/A.current:100*("touchmove"===e.type?e.touches[0].pageY:e.pageY)/A.current-100*C.current/A.current),r=T.current-t),ye(W.current,n,r)},ge=function(e){_((function(t){for(var r=[],n=0;n<b.children.length;n++)r[n]=$(t,n);return r[W.current]=I.current,r[W.current+1]=K.current,b.onResizeEnd&&b.onResizeEnd({originalEvent:e,sizes:r}),B&&se(r),r})),!Z()&&c.removeClass(z.current,"p-splitter-gutter-resizing"),P.current&&Object.keys(P.current).forEach((function(e){return P.current[e].setAttribute("data-p-splitter-gutter-resizing",!1)})),!Z()&&c.removeClass(S.current,"p-splitter-resizing"),S.current.setAttribute("data-p-splitter-resizing",!1),R.current=!1,A.current=null,C.current=null,D.current=null,N.current=null,k.current=null,I.current=null,T.current=null,K.current=null,W.current=null},me=function(){we(),ge()},he=function(e,t){var r=b.children[t].props&&b.children[t].props.minSize||0;switch(e.code){case"ArrowLeft":"horizontal"===b.layout&&be(e,t,-1*b.step),e.preventDefault();break;case"ArrowRight":"horizontal"===b.layout&&be(e,t,b.step),e.preventDefault();break;case"ArrowDown":"vertical"===b.layout&&be(e,t,-1*b.step),e.preventDefault();break;case"ArrowUp":"vertical"===b.layout&&be(e,t,b.step),e.preventDefault();break;case"Home":ye(t,100,r),e.preventDefault();break;case"End":ye(t,r,100),e.preventDefault();break;case"Enter":H.current>99?ye(t,r,100):ye(t,100,r),e.preventDefault()}},ye=function(e,t,r){W.current=e,z.current=P.current[e],A.current=horizontal?c.getWidth(S.current):c.getHeight(S.current),D.current=z.current.previousElementSibling,N.current=z.current.nextElementSibling,ae(t,r)&&(I.current=t,K.current=r,D.current.style.flexBasis="calc("+t+"% - "+(b.children.length-1)*b.gutterSize+"px)",N.current.style.flexBasis="calc("+r+"% - "+(b.children.length-1)*b.gutterSize+"px)",H.current=parseFloat(t).toFixed(4))},ve=function(e,t,r){fe(e,t,!0),de(e,r,!0)},be=function(e,t,r){we(),Y.current=setTimeout((function(){ve(e,t,r)}),40)},we=function(){Y.current&&clearTimeout(Y.current)},Se=function(e,t){fe(e,t,!1),te(),ie()},ze=function(e,t){fe(e,t,!1),window.addEventListener("touchmove",Oe,{passive:!1,cancelable:!1}),window.addEventListener("touchend",xe)},Oe=function(e){de(e)},xe=function e(t){ge(t),window.removeEventListener("touchmove",Oe),window.removeEventListener("touchend",e)};e.useImperativeHandle(f,(function(){return{props:b,getElement:function(){return S.current}}})),o((function(){S.current&&(w.current=s())})),e.useEffect((function(){var e;(e=S.current.children,d(e)||g(e)||m(e)||h()).filter((function(e){return"splitterpanel.root"===c.getAttribute(e,"data-pc-section")})).map((function(e,t){H.current=$(L,0),e.childNodes&&l.isNotEmpty(c.find(e,"[data-pc-name='splitter']")&&c.find(e,"[data-pc-section='root']"))&&(!Z()&&c.addClass(e,"p-splitter-panel-nested"),e.setAttribute("data-p-splitter-panel-nested",!0),X(!0))}))}),[]),e.useEffect((function(){B&&pe()}),[pe,B]);var Ee=function(t,r){var n=le(t,"id")||"".concat(w.current,"_").concat(r),i=a(le(t,"className"),V("panel.root")),u=y({ref:function(e){return P.current[r]=e},className:V("gutter"),style:"horizontal"===b.layout?{width:b.gutterSize+"px"}:{height:b.gutterSize+"px"},onMouseDown:function(e){return Se(e,r)},onKeyDown:function(e){return he(e,r)},onKeyUp:me,onTouchStart:function(e){return ze(e,r)},onTouchMove:function(e){return Oe(e)},onTouchEnd:function(e){return xe(e)},"data-p-splitter-gutter-resizing":!1,role:"separator"},Q("gutter")),o=y({tabIndex:le(t,"tabIndex")||0,className:V("gutterHandler"),"aria-orientation":"horizontal"===b.layout?"vertical":"horizontal","aria-controls":n,"aria-label":le(t,"aria-label"),"aria-labelledby":le(t,"aria-labelledby"),"aria-valuenow":H.current,"aria-valuetext":parseFloat(H.current).toFixed(0)+"%","aria-valuemin":le(t,"minSize")||"0","aria-valuemax":"100"},Q("gutterHandler")),l=r!==b.children.length-1&&e.createElement("div",u,e.createElement("div",o)),c="calc("+$(L,r)+"% - "+(J-1)*b.gutterSize+"px)",s=y({key:r,id:n,className:i,style:j(j({},le(t,"style")),{},{flexBasis:c}),role:"presentation","data-p-splitter-panel-nested":!1},Q("splitterpanel.root",{context:{nested:U}}));return e.createElement(e.Fragment,null,e.createElement("div",s,le(t,"children")),l)},Pe=y({id:b.id,style:b.style,className:a(b.className,V("root")),"data-p-splitter-resizing":!1},x.getOtherProps(b),Q("root")),je=e.Children.map(b.children,Ee);return e.createElement("div",p({ref:S},Pe),je)})));A.displayName="SplitterPanel",R.displayName="Splitter";export{R as Splitter,A as SplitterPanel};
@@ -207,6 +207,7 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
207
207
  var mergeProps = hooks.useMergeProps();
208
208
  var context = React__namespace.useContext(api.PrimeReactContext);
209
209
  var props = SplitterBase.getProps(inProps, context);
210
+ var idState = React__namespace.useRef('');
210
211
  var elementRef = React__namespace.useRef(null);
211
212
  var gutterRef = React__namespace.useRef();
212
213
  var gutterRefs = React__namespace.useRef({});
@@ -373,13 +374,7 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
373
374
  newPrevPanelSize = prevPanelSize.current + newPos;
374
375
  newNextPanelSize = nextPanelSize.current - newPos;
375
376
  }
376
- if (validateResize(newPrevPanelSize, newNextPanelSize)) {
377
- prevPanelSizeNew.current = newPrevPanelSize;
378
- nextPanelSizeNew.current = newNextPanelSize;
379
- prevPanelElement.current.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
380
- nextPanelElement.current.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
381
- prevSize.current = parseFloat(newPrevPanelSize).toFixed(4);
382
- }
377
+ resizePanel(prevPanelIndex.current, newPrevPanelSize, newNextPanelSize);
383
378
  };
384
379
  var onResizeEnd = function onResizeEnd(event) {
385
380
  setPanelSizes(function (prev) {
@@ -409,6 +404,7 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
409
404
  onResizeEnd();
410
405
  };
411
406
  var onGutterKeyDown = function onGutterKeyDown(event, index) {
407
+ var minSize = props.children[index].props && props.children[index].props.minSize || 0;
412
408
  switch (event.code) {
413
409
  case 'ArrowLeft':
414
410
  {
@@ -442,6 +438,42 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
442
438
  event.preventDefault();
443
439
  break;
444
440
  }
441
+ case 'Home':
442
+ {
443
+ resizePanel(index, 100, minSize);
444
+ event.preventDefault();
445
+ break;
446
+ }
447
+ case 'End':
448
+ {
449
+ resizePanel(index, minSize, 100);
450
+ event.preventDefault();
451
+ break;
452
+ }
453
+ case 'Enter':
454
+ {
455
+ if (prevSize.current > 99) {
456
+ resizePanel(index, minSize, 100);
457
+ } else {
458
+ resizePanel(index, 100, minSize);
459
+ }
460
+ event.preventDefault();
461
+ break;
462
+ }
463
+ }
464
+ };
465
+ var resizePanel = function resizePanel(index, newPrevPanelSize, newNextPanelSize) {
466
+ prevPanelIndex.current = index;
467
+ gutterRef.current = gutterRefs.current[index];
468
+ size.current = horizontal ? utils.DomHandler.getWidth(elementRef.current) : utils.DomHandler.getHeight(elementRef.current);
469
+ prevPanelElement.current = gutterRef.current.previousElementSibling;
470
+ nextPanelElement.current = gutterRef.current.nextElementSibling;
471
+ if (validateResize(newPrevPanelSize, newNextPanelSize)) {
472
+ prevPanelSizeNew.current = newPrevPanelSize;
473
+ nextPanelSizeNew.current = newNextPanelSize;
474
+ prevPanelElement.current.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
475
+ nextPanelElement.current.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (props.children.length - 1) * props.gutterSize + 'px)';
476
+ prevSize.current = parseFloat(newPrevPanelSize).toFixed(4);
445
477
  }
446
478
  };
447
479
  var repeat = function repeat(event, index, step) {
@@ -487,6 +519,11 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
487
519
  }
488
520
  };
489
521
  });
522
+ hooks.useMountEffect(function () {
523
+ if (elementRef.current) {
524
+ idState.current = utils.UniqueComponentId();
525
+ }
526
+ });
490
527
  React__namespace.useEffect(function () {
491
528
  var panelElements = _toConsumableArray(elementRef.current.children).filter(function (child) {
492
529
  return utils.DomHandler.getAttribute(child, 'data-pc-section') === 'splitterpanel.root';
@@ -505,6 +542,7 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
505
542
  if (isStateful) restoreState();
506
543
  }, [restoreState, isStateful]);
507
544
  var createPanel = function createPanel(panel, index) {
545
+ var panelId = getPanelProp(panel, 'id') || "".concat(idState.current, "_").concat(index);
508
546
  var panelClassName = utils.classNames(getPanelProp(panel, 'className'), cx('panel.root'));
509
547
  var gutterProps = mergeProps({
510
548
  ref: function ref(el) {
@@ -532,19 +570,26 @@ this.primereact.splitter = (function (exports, React, api, componentbase, hooks,
532
570
  onTouchEnd: function onTouchEnd(event) {
533
571
  return onGutterTouchEnd(event);
534
572
  },
535
- 'data-p-splitter-gutter-resizing': false
573
+ 'data-p-splitter-gutter-resizing': false,
574
+ role: 'separator'
536
575
  }, ptm('gutter'));
537
576
  var gutterHandlerProps = mergeProps({
538
- tabIndex: 0,
577
+ tabIndex: getPanelProp(panel, 'tabIndex') || 0,
539
578
  className: cx('gutterHandler'),
540
- 'aria-orientation': props.layout,
541
- 'aria-valuenow': prevSize.current
579
+ 'aria-orientation': props.layout === 'horizontal' ? 'vertical' : 'horizontal',
580
+ 'aria-controls': panelId,
581
+ 'aria-label': getPanelProp(panel, 'aria-label'),
582
+ 'aria-labelledby': getPanelProp(panel, 'aria-labelledby'),
583
+ 'aria-valuenow': prevSize.current,
584
+ 'aria-valuetext': parseFloat(prevSize.current).toFixed(0) + '%',
585
+ 'aria-valuemin': getPanelProp(panel, 'minSize') || '0',
586
+ 'aria-valuemax': '100'
542
587
  }, ptm('gutterHandler'));
543
588
  var gutter = index !== props.children.length - 1 && /*#__PURE__*/React__namespace.createElement("div", gutterProps, /*#__PURE__*/React__namespace.createElement("div", gutterHandlerProps));
544
589
  var flexBasis = 'calc(' + panelSize(panelSizes, index) + '% - ' + (childrenLength - 1) * props.gutterSize + 'px)';
545
590
  var rootProps = mergeProps({
546
591
  key: index,
547
- id: getPanelProp(panel, 'id'),
592
+ id: panelId,
548
593
  className: panelClassName,
549
594
  style: _objectSpread(_objectSpread({}, getPanelProp(panel, 'style')), {}, {
550
595
  flexBasis: flexBasis
@@ -1 +1 @@
1
- this.primereact=this.primereact||{},this.primereact.splitter=function(e,t,r,n,u,i){"use strict";function l(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var o=l(t);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},a.apply(this,arguments)}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function s(e){if(Array.isArray(e))return c(e)}function p(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function f(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function d(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function m(e,t){if("object"!==g(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==g(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function y(e){var t=m(e,"string");return"symbol"===g(t)?t:String(t)}function h(e){if(Array.isArray(e))return e}function v(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,u,i,l,o=[],a=!0,c=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;a=!1}else for(;!(a=(n=i.call(r)).done)&&(o.push(n.value),o.length!==t);a=!0);}catch(e){c=!0,u=e}finally{try{if(!a&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(c)throw u}}return o}}function b(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function w(e,t){return h(e)||v(e,t)||f(e,t)||b()}var O=n.ComponentBase.extend({defaultProps:{__TYPE:"Splitter",className:null,gutterSize:4,id:null,step:5,layout:"horizontal",onResizeEnd:null,stateKey:null,stateStorage:"session",style:null,children:void 0},css:{classes:{root:function(e){return i.classNames("p-splitter p-component p-splitter-".concat(e.props.layout))},gutter:"p-splitter-gutter",gutterHandler:"p-splitter-gutter-handle",panel:{root:"p-splitter-panel"}},styles:"\n@layer primereact {\n .p-splitter {\n display: flex;\n flex-wrap: nowrap;\n }\n\n .p-splitter-vertical {\n flex-direction: column;\n }\n\n .p-splitter-panel {\n flex-grow: 1;\n }\n\n .p-splitter-panel-nested {\n display: flex;\n }\n\n .p-splitter-panel .p-splitter {\n flex-grow: 1;\n border: 0 none;\n }\n\n .p-splitter-gutter {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: col-resize;\n }\n\n .p-splitter-horizontal.p-splitter-resizing {\n cursor: col-resize;\n user-select: none;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter > .p-splitter-gutter-handle {\n height: 24px;\n width: 100%;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter {\n cursor: col-resize;\n }\n\n .p-splitter-vertical.p-splitter-resizing {\n cursor: row-resize;\n user-select: none;\n }\n\n .p-splitter-vertical > .p-splitter-gutter {\n cursor: row-resize;\n }\n\n .p-splitter-vertical > .p-splitter-gutter > .p-splitter-gutter-handle {\n width: 24px;\n height: 100%;\n }\n}\n\n"}}),S=n.ComponentBase.extend({defaultProps:{__TYPE:"SplitterPanel",className:null,minSize:null,size:null,style:null,children:void 0},getCProps:function(e){return i.ObjectUtils.getComponentProps(e,S.defaultProps)},getCOtherProps:function(e){return i.ObjectUtils.getComponentDiffProps(e,S.defaultProps)},getCProp:function(e,t){return i.ObjectUtils.getComponentProp(e,t,S.defaultProps)}});function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?z(Object(r),!0).forEach((function(t){var n,u,i;n=e,i=r[t],(u=y(u=t))in n?Object.defineProperty(n,u,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[u]=i})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):z(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var P=function(){},D=o.memo(o.forwardRef((function(e,t){var l=u.useMergeProps(),c=o.useContext(r.PrimeReactContext),g=O.getProps(e,c),m=o.useRef(null),y=o.useRef(),h=o.useRef({}),v=o.useRef(null),b=o.useRef(null),z=o.useRef(null),P=o.useRef(null),D=o.useRef(null),E=o.useRef(null),x=o.useRef(null),H=o.useRef(null),R=o.useRef(null),A=o.useRef(null),C=o.useRef(null),N=o.useRef(null),k=w(o.useState([]),2),T=k[0],I=k[1],U=w(o.useState(!1),2),_=U[0],K=U[1],L=null!=g.stateKey,M=g.children&&g.children.length||1,Y=function(e,t){return t in e?e[t]:g.children&&[].concat(g.children)[t].props.size||100/M},B={props:g,state:{panelSizes:T,nested:!0===i.DomHandler.getAttribute(m.current&&m.current.parentElement,"data-p-splitter-panel-nested")}},W=O.setMetaData(j({},B)),X=W.ptm,F=W.cx,J=W.isUnstyled;n.useHandleStyle(O.css.styles,J,{name:"splitter"});var $=w(u.useEventListener({type:"mousemove",listener:function(e){return oe(e)}}),2),q=$[0],G=$[1],Q=w(u.useEventListener({type:"mouseup",listener:function(e){ae(e),ee()}}),2),V=Q[0],Z=Q[1],ee=function(){G(),Z()},te=function(e,t){return S.getCProp(e,t)},re=function(e,t){return!(e>100||e<0)&&(!(t>100||t<0)&&(!(g.children[C.current].props&&g.children[C.current].props.minSize&&g.children[C.current].props.minSize>e)&&!(g.children[C.current+1].props&&g.children[C.current+1].props.minSize&&g.children[C.current+1].props.minSize>t)))},ne=o.useCallback((function(){switch(g.stateStorage){case"local":return window.localStorage;case"session":return window.sessionStorage;default:throw new Error(g.stateStorage+' is not a valid value for the state storage, supported values are "local" and "session".')}}),[g.stateStorage]),ue=function(e){i.ObjectUtils.isArray(e)&&ne().setItem(g.stateKey,JSON.stringify(e))},ie=o.useCallback((function(){var e=ne().getItem(g.stateKey);e&&I(JSON.parse(e))}),[ne,g.stateKey]),le=function(e,t,r){y.current=h.current[t];var n="touchstart"===e.type?e.touches[0].pageX:e.pageX,u="touchstart"===e.type?e.touches[0].pageY:e.pageY,l="horizontal"===g.layout;v.current=l?i.DomHandler.getWidth(m.current):i.DomHandler.getHeight(m.current),b.current=!0,z.current=l?n:u,P.current=y.current.previousElementSibling,D.current=y.current.nextElementSibling,r?(E.current=l?i.DomHandler.getOuterWidth(P.current,!0):i.DomHandler.getOuterHeight(P.current,!0),R.current=l?i.DomHandler.getOuterWidth(D.current,!0):i.DomHandler.getOuterHeight(D.current,!0)):(E.current=100*(l?i.DomHandler.getOuterWidth(P.current,!0):i.DomHandler.getOuterHeight(P.current,!0))/v.current,R.current=100*(l?i.DomHandler.getOuterWidth(D.current,!0):i.DomHandler.getOuterHeight(D.current,!0))/v.current),H.current=E.current,A.current=R.current,C.current=t,!J()&&i.DomHandler.addClass(y.current,"p-splitter-gutter-resizing"),y.current.setAttribute("data-p-splitter-gutter-resizing",!0),!J()&&i.DomHandler.addClass(m.current,"p-splitter-resizing"),m.current.setAttribute("data-p-splitter-resizing",!0)},oe=function(e){var t,r,n,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i="horizontal"===g.layout;arguments.length>2&&void 0!==arguments[2]&&arguments[2]?i?(n=100*(E.current+u)/v.current,r=100*(R.current-u)/v.current):(n=100*(E.current-u)/v.current,r=100*(R.current+u)/v.current):(n=E.current+(t=i?100*("touchmove"===e.type?e.touches[0].pageX:e.pageX)/v.current-100*z.current/v.current:100*("touchmove"===e.type?e.touches[0].pageY:e.pageY)/v.current-100*z.current/v.current),r=R.current-t),re(n,r)&&(H.current=n,A.current=r,P.current.style.flexBasis="calc("+n+"% - "+(g.children.length-1)*g.gutterSize+"px)",D.current.style.flexBasis="calc("+r+"% - "+(g.children.length-1)*g.gutterSize+"px)",x.current=parseFloat(n).toFixed(4))},ae=function(e){I((function(t){for(var r=[],n=0;n<g.children.length;n++)r[n]=Y(t,n);return r[C.current]=H.current,r[C.current+1]=A.current,g.onResizeEnd&&g.onResizeEnd({originalEvent:e,sizes:r}),L&&ue(r),r})),!J()&&i.DomHandler.removeClass(y.current,"p-splitter-gutter-resizing"),h.current&&Object.keys(h.current).forEach((function(e){return h.current[e].setAttribute("data-p-splitter-gutter-resizing",!1)})),!J()&&i.DomHandler.removeClass(m.current,"p-splitter-resizing"),m.current.setAttribute("data-p-splitter-resizing",!1),b.current=!1,v.current=null,z.current=null,P.current=null,D.current=null,E.current=null,H.current=null,R.current=null,A.current=null,C.current=null},ce=function(){de(),ae()},se=function(e,t){switch(e.code){case"ArrowLeft":"horizontal"===g.layout&&fe(e,t,-1*g.step),e.preventDefault();break;case"ArrowRight":"horizontal"===g.layout&&fe(e,t,g.step),e.preventDefault();break;case"ArrowDown":"vertical"===g.layout&&fe(e,t,-1*g.step),e.preventDefault();break;case"ArrowUp":"vertical"===g.layout&&fe(e,t,g.step),e.preventDefault()}},pe=function(e,t,r){le(e,t,!0),oe(e,r,!0)},fe=function(e,t,r){de(),N.current=setTimeout((function(){pe(e,t,r)}),40)},de=function(){N.current&&clearTimeout(N.current)},ge=function(e,t){le(e,t,!1),q(),V()},me=function(e,t){le(e,t,!1),window.addEventListener("touchmove",ye,{passive:!1,cancelable:!1}),window.addEventListener("touchend",he)},ye=function(e){oe(e)},he=function e(t){ae(t),window.removeEventListener("touchmove",ye),window.removeEventListener("touchend",e)};o.useImperativeHandle(t,(function(){return{props:g,getElement:function(){return m.current}}})),o.useEffect((function(){var e;(e=m.current.children,s(e)||p(e)||f(e)||d()).filter((function(e){return"splitterpanel.root"===i.DomHandler.getAttribute(e,"data-pc-section")})).map((function(e,t){x.current=Y(T,0),e.childNodes&&i.ObjectUtils.isNotEmpty(i.DomHandler.find(e,"[data-pc-name='splitter']")&&i.DomHandler.find(e,"[data-pc-section='root']"))&&(!J()&&i.DomHandler.addClass(e,"p-splitter-panel-nested"),e.setAttribute("data-p-splitter-panel-nested",!0),K(!0))}))}),[]),o.useEffect((function(){L&&ie()}),[ie,L]);var ve=function(e,t){var r=i.classNames(te(e,"className"),F("panel.root")),n=l({ref:function(e){return h.current[t]=e},className:F("gutter"),style:"horizontal"===g.layout?{width:g.gutterSize+"px"}:{height:g.gutterSize+"px"},onMouseDown:function(e){return ge(e,t)},onKeyDown:function(e){return se(e,t)},onKeyUp:ce,onTouchStart:function(e){return me(e,t)},onTouchMove:function(e){return ye(e)},onTouchEnd:function(e){return he(e)},"data-p-splitter-gutter-resizing":!1},X("gutter")),u=l({tabIndex:0,className:F("gutterHandler"),"aria-orientation":g.layout,"aria-valuenow":x.current},X("gutterHandler")),a=t!==g.children.length-1&&o.createElement("div",n,o.createElement("div",u)),c="calc("+Y(T,t)+"% - "+(M-1)*g.gutterSize+"px)",s=l({key:t,id:te(e,"id"),className:r,style:j(j({},te(e,"style")),{},{flexBasis:c}),role:"presentation","data-p-splitter-panel-nested":!1},X("splitterpanel.root",{context:{nested:_}}));return o.createElement(o.Fragment,null,o.createElement("div",s,te(e,"children")),a)},be=l({id:g.id,style:g.style,className:i.classNames(g.className,F("root")),"data-p-splitter-resizing":!1},O.getOtherProps(g),X("root")),we=o.Children.map(g.children,ve);return o.createElement("div",a({ref:m},be),we)})));return P.displayName="SplitterPanel",D.displayName="Splitter",e.Splitter=D,e.SplitterPanel=P,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.componentbase,primereact.hooks,primereact.utils);
1
+ this.primereact=this.primereact||{},this.primereact.splitter=function(e,t,r,n,i,u){"use strict";function l(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var o=l(t);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},a.apply(this,arguments)}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function s(e){if(Array.isArray(e))return c(e)}function p(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function f(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function d(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function g(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function h(e){var t=g(e,"string");return"symbol"===m(t)?t:String(t)}function y(e){if(Array.isArray(e))return e}function b(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,u,l,o=[],a=!0,c=!1;try{if(u=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;a=!1}else for(;!(a=(n=u.call(r)).done)&&(o.push(n.value),o.length!==t);a=!0);}catch(e){c=!0,i=e}finally{try{if(!a&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(c)throw i}}return o}}function v(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function S(e,t){return y(e)||b(e,t)||f(e,t)||v()}var w=n.ComponentBase.extend({defaultProps:{__TYPE:"Splitter",className:null,gutterSize:4,id:null,step:5,layout:"horizontal",onResizeEnd:null,stateKey:null,stateStorage:"session",style:null,children:void 0},css:{classes:{root:function(e){return u.classNames("p-splitter p-component p-splitter-".concat(e.props.layout))},gutter:"p-splitter-gutter",gutterHandler:"p-splitter-gutter-handle",panel:{root:"p-splitter-panel"}},styles:"\n@layer primereact {\n .p-splitter {\n display: flex;\n flex-wrap: nowrap;\n }\n\n .p-splitter-vertical {\n flex-direction: column;\n }\n\n .p-splitter-panel {\n flex-grow: 1;\n }\n\n .p-splitter-panel-nested {\n display: flex;\n }\n\n .p-splitter-panel .p-splitter {\n flex-grow: 1;\n border: 0 none;\n }\n\n .p-splitter-gutter {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: col-resize;\n }\n\n .p-splitter-horizontal.p-splitter-resizing {\n cursor: col-resize;\n user-select: none;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter > .p-splitter-gutter-handle {\n height: 24px;\n width: 100%;\n }\n\n .p-splitter-horizontal > .p-splitter-gutter {\n cursor: col-resize;\n }\n\n .p-splitter-vertical.p-splitter-resizing {\n cursor: row-resize;\n user-select: none;\n }\n\n .p-splitter-vertical > .p-splitter-gutter {\n cursor: row-resize;\n }\n\n .p-splitter-vertical > .p-splitter-gutter > .p-splitter-gutter-handle {\n width: 24px;\n height: 100%;\n }\n}\n\n"}}),O=n.ComponentBase.extend({defaultProps:{__TYPE:"SplitterPanel",className:null,minSize:null,size:null,style:null,children:void 0},getCProps:function(e){return u.ObjectUtils.getComponentProps(e,O.defaultProps)},getCOtherProps:function(e){return u.ObjectUtils.getComponentDiffProps(e,O.defaultProps)},getCProp:function(e,t){return u.ObjectUtils.getComponentProp(e,t,O.defaultProps)}});function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function D(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?z(Object(r),!0).forEach((function(t){var n,i,u;n=e,u=r[t],(i=h(i=t))in n?Object.defineProperty(n,i,{value:u,enumerable:!0,configurable:!0,writable:!0}):n[i]=u})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):z(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var E=function(){},j=o.memo(o.forwardRef((function(e,t){var l=i.useMergeProps(),c=o.useContext(r.PrimeReactContext),m=w.getProps(e,c),g=o.useRef(""),h=o.useRef(null),y=o.useRef(),b=o.useRef({}),v=o.useRef(null),z=o.useRef(null),E=o.useRef(null),j=o.useRef(null),P=o.useRef(null),x=o.useRef(null),H=o.useRef(null),R=o.useRef(null),A=o.useRef(null),C=o.useRef(null),N=o.useRef(null),k=o.useRef(null),I=S(o.useState([]),2),T=I[0],U=I[1],_=S(o.useState(!1),2),M=_[0],K=_[1],L=null!=m.stateKey,W=m.children&&m.children.length||1,Y=function(e,t){return t in e?e[t]:m.children&&[].concat(m.children)[t].props.size||100/W},B={props:m,state:{panelSizes:T,nested:!0===u.DomHandler.getAttribute(h.current&&h.current.parentElement,"data-p-splitter-panel-nested")}},F=w.setMetaData(D({},B)),X=F.ptm,J=F.cx,q=F.isUnstyled;n.useHandleStyle(w.css.styles,q,{name:"splitter"});var $=S(i.useEventListener({type:"mousemove",listener:function(e){return ae(e)}}),2),G=$[0],Q=$[1],V=S(i.useEventListener({type:"mouseup",listener:function(e){ce(e),te()}}),2),Z=V[0],ee=V[1],te=function(){Q(),ee()},re=function(e,t){return O.getCProp(e,t)},ne=function(e,t){return!(e>100||e<0)&&(!(t>100||t<0)&&(!(m.children[N.current].props&&m.children[N.current].props.minSize&&m.children[N.current].props.minSize>e)&&!(m.children[N.current+1].props&&m.children[N.current+1].props.minSize&&m.children[N.current+1].props.minSize>t)))},ie=o.useCallback((function(){switch(m.stateStorage){case"local":return window.localStorage;case"session":return window.sessionStorage;default:throw new Error(m.stateStorage+' is not a valid value for the state storage, supported values are "local" and "session".')}}),[m.stateStorage]),ue=function(e){u.ObjectUtils.isArray(e)&&ie().setItem(m.stateKey,JSON.stringify(e))},le=o.useCallback((function(){var e=ie().getItem(m.stateKey);e&&U(JSON.parse(e))}),[ie,m.stateKey]),oe=function(e,t,r){y.current=b.current[t];var n="touchstart"===e.type?e.touches[0].pageX:e.pageX,i="touchstart"===e.type?e.touches[0].pageY:e.pageY,l="horizontal"===m.layout;v.current=l?u.DomHandler.getWidth(h.current):u.DomHandler.getHeight(h.current),z.current=!0,E.current=l?n:i,j.current=y.current.previousElementSibling,P.current=y.current.nextElementSibling,r?(x.current=l?u.DomHandler.getOuterWidth(j.current,!0):u.DomHandler.getOuterHeight(j.current,!0),A.current=l?u.DomHandler.getOuterWidth(P.current,!0):u.DomHandler.getOuterHeight(P.current,!0)):(x.current=100*(l?u.DomHandler.getOuterWidth(j.current,!0):u.DomHandler.getOuterHeight(j.current,!0))/v.current,A.current=100*(l?u.DomHandler.getOuterWidth(P.current,!0):u.DomHandler.getOuterHeight(P.current,!0))/v.current),R.current=x.current,C.current=A.current,N.current=t,!q()&&u.DomHandler.addClass(y.current,"p-splitter-gutter-resizing"),y.current.setAttribute("data-p-splitter-gutter-resizing",!0),!q()&&u.DomHandler.addClass(h.current,"p-splitter-resizing"),h.current.setAttribute("data-p-splitter-resizing",!0)},ae=function(e){var t,r,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,u="horizontal"===m.layout;arguments.length>2&&void 0!==arguments[2]&&arguments[2]?u?(n=100*(x.current+i)/v.current,r=100*(A.current-i)/v.current):(n=100*(x.current-i)/v.current,r=100*(A.current+i)/v.current):(n=x.current+(t=u?100*("touchmove"===e.type?e.touches[0].pageX:e.pageX)/v.current-100*E.current/v.current:100*("touchmove"===e.type?e.touches[0].pageY:e.pageY)/v.current-100*E.current/v.current),r=A.current-t),fe(N.current,n,r)},ce=function(e){U((function(t){for(var r=[],n=0;n<m.children.length;n++)r[n]=Y(t,n);return r[N.current]=R.current,r[N.current+1]=C.current,m.onResizeEnd&&m.onResizeEnd({originalEvent:e,sizes:r}),L&&ue(r),r})),!q()&&u.DomHandler.removeClass(y.current,"p-splitter-gutter-resizing"),b.current&&Object.keys(b.current).forEach((function(e){return b.current[e].setAttribute("data-p-splitter-gutter-resizing",!1)})),!q()&&u.DomHandler.removeClass(h.current,"p-splitter-resizing"),h.current.setAttribute("data-p-splitter-resizing",!1),z.current=!1,v.current=null,E.current=null,j.current=null,P.current=null,x.current=null,R.current=null,A.current=null,C.current=null,N.current=null},se=function(){ge(),ce()},pe=function(e,t){var r=m.children[t].props&&m.children[t].props.minSize||0;switch(e.code){case"ArrowLeft":"horizontal"===m.layout&&me(e,t,-1*m.step),e.preventDefault();break;case"ArrowRight":"horizontal"===m.layout&&me(e,t,m.step),e.preventDefault();break;case"ArrowDown":"vertical"===m.layout&&me(e,t,-1*m.step),e.preventDefault();break;case"ArrowUp":"vertical"===m.layout&&me(e,t,m.step),e.preventDefault();break;case"Home":fe(t,100,r),e.preventDefault();break;case"End":fe(t,r,100),e.preventDefault();break;case"Enter":H.current>99?fe(t,r,100):fe(t,100,r),e.preventDefault()}},fe=function(e,t,r){N.current=e,y.current=b.current[e],v.current=horizontal?u.DomHandler.getWidth(h.current):u.DomHandler.getHeight(h.current),j.current=y.current.previousElementSibling,P.current=y.current.nextElementSibling,ne(t,r)&&(R.current=t,C.current=r,j.current.style.flexBasis="calc("+t+"% - "+(m.children.length-1)*m.gutterSize+"px)",P.current.style.flexBasis="calc("+r+"% - "+(m.children.length-1)*m.gutterSize+"px)",H.current=parseFloat(t).toFixed(4))},de=function(e,t,r){oe(e,t,!0),ae(e,r,!0)},me=function(e,t,r){ge(),k.current=setTimeout((function(){de(e,t,r)}),40)},ge=function(){k.current&&clearTimeout(k.current)},he=function(e,t){oe(e,t,!1),G(),Z()},ye=function(e,t){oe(e,t,!1),window.addEventListener("touchmove",be,{passive:!1,cancelable:!1}),window.addEventListener("touchend",ve)},be=function(e){ae(e)},ve=function e(t){ce(t),window.removeEventListener("touchmove",be),window.removeEventListener("touchend",e)};o.useImperativeHandle(t,(function(){return{props:m,getElement:function(){return h.current}}})),i.useMountEffect((function(){h.current&&(g.current=u.UniqueComponentId())})),o.useEffect((function(){var e;(e=h.current.children,s(e)||p(e)||f(e)||d()).filter((function(e){return"splitterpanel.root"===u.DomHandler.getAttribute(e,"data-pc-section")})).map((function(e,t){H.current=Y(T,0),e.childNodes&&u.ObjectUtils.isNotEmpty(u.DomHandler.find(e,"[data-pc-name='splitter']")&&u.DomHandler.find(e,"[data-pc-section='root']"))&&(!q()&&u.DomHandler.addClass(e,"p-splitter-panel-nested"),e.setAttribute("data-p-splitter-panel-nested",!0),K(!0))}))}),[]),o.useEffect((function(){L&&le()}),[le,L]);var Se=function(e,t){var r=re(e,"id")||"".concat(g.current,"_").concat(t),n=u.classNames(re(e,"className"),J("panel.root")),i=l({ref:function(e){return b.current[t]=e},className:J("gutter"),style:"horizontal"===m.layout?{width:m.gutterSize+"px"}:{height:m.gutterSize+"px"},onMouseDown:function(e){return he(e,t)},onKeyDown:function(e){return pe(e,t)},onKeyUp:se,onTouchStart:function(e){return ye(e,t)},onTouchMove:function(e){return be(e)},onTouchEnd:function(e){return ve(e)},"data-p-splitter-gutter-resizing":!1,role:"separator"},X("gutter")),a=l({tabIndex:re(e,"tabIndex")||0,className:J("gutterHandler"),"aria-orientation":"horizontal"===m.layout?"vertical":"horizontal","aria-controls":r,"aria-label":re(e,"aria-label"),"aria-labelledby":re(e,"aria-labelledby"),"aria-valuenow":H.current,"aria-valuetext":parseFloat(H.current).toFixed(0)+"%","aria-valuemin":re(e,"minSize")||"0","aria-valuemax":"100"},X("gutterHandler")),c=t!==m.children.length-1&&o.createElement("div",i,o.createElement("div",a)),s="calc("+Y(T,t)+"% - "+(W-1)*m.gutterSize+"px)",p=l({key:t,id:r,className:n,style:D(D({},re(e,"style")),{},{flexBasis:s}),role:"presentation","data-p-splitter-panel-nested":!1},X("splitterpanel.root",{context:{nested:M}}));return o.createElement(o.Fragment,null,o.createElement("div",p,re(e,"children")),c)},we=l({id:m.id,style:m.style,className:u.classNames(m.className,J("root")),"data-p-splitter-resizing":!1},w.getOtherProps(m),X("root")),Oe=o.Children.map(m.children,Se);return o.createElement("div",a({ref:h},we),Oe)})));return E.displayName="SplitterPanel",j.displayName="Splitter",e.Splitter=j,e.SplitterPanel=E,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.componentbase,primereact.hooks,primereact.utils);
@@ -168,7 +168,7 @@ var classes = {
168
168
  submenuIcon: 'p-submenu-icon',
169
169
  action: 'p-menuitem-link',
170
170
  menuitem: function menuitem(_ref3) {
171
- var _className = _ref3._className,
171
+ var itemClassName = _ref3.itemClassName,
172
172
  active = _ref3.active,
173
173
  focused = _ref3.focused,
174
174
  disabled = _ref3.disabled;
@@ -176,7 +176,7 @@ var classes = {
176
176
  'p-menuitem-active p-highlight': active,
177
177
  'p-focus': focused,
178
178
  'p-disabled': disabled
179
- }, _className);
179
+ }, itemClassName);
180
180
  },
181
181
  menu: 'p-tieredmenu-root-list',
182
182
  submenu: 'p-submenu-list',
@@ -365,6 +365,7 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__name
365
365
  }
366
366
  var item = processedItem.item;
367
367
  var style = getItemProp(processedItem, 'style');
368
+ var itemClassName = getItemProp(processedItem, 'className');
368
369
  var _icon = getItemProp(processedItem, 'icon');
369
370
  var target = getItemProp(processedItem, 'target');
370
371
  var url = getItemProp(processedItem, 'url');
@@ -440,7 +441,7 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__name
440
441
  'data-p-disabled': disabled,
441
442
  'data-p-visited': focused,
442
443
  className: cx('menuitem', {
443
- className: item.className,
444
+ itemClassName: itemClassName,
444
445
  active: active,
445
446
  focused: focused,
446
447
  disabled: disabled
@@ -1005,7 +1006,7 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
1005
1006
  });
1006
1007
  }
1007
1008
  };
1008
- var createProcessedItems = function createProcessedItems(items) {
1009
+ var createProcessedItems = React__namespace.useCallback(function (items) {
1009
1010
  var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
1010
1011
  var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1011
1012
  var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
@@ -1024,7 +1025,7 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
1024
1025
  processedItems.push(newItem);
1025
1026
  });
1026
1027
  return processedItems;
1027
- };
1028
+ }, []);
1028
1029
  var createStyle = function createStyle() {
1029
1030
  if (!styleElementRef.current) {
1030
1031
  styleElementRef.current = utils.DomHandler.createInlineStyle(context && context.nonce || PrimeReact__default["default"].nonce, context && context.styleContainer);
@@ -1080,11 +1081,11 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
1080
1081
  !attributeSelectorState && setAttributeSelectorState(uniqueId);
1081
1082
  }
1082
1083
  });
1083
- hooks.useUpdateEffect(function () {
1084
+ React__namespace.useEffect(function () {
1084
1085
  var itemsToProcess = props.model || [];
1085
1086
  var processed = createProcessedItems(itemsToProcess);
1086
1087
  setProcessedItems(processed);
1087
- }, props.model);
1088
+ }, [props.model, createProcessedItems]);
1088
1089
  hooks.useUpdateEffect(function () {
1089
1090
  var processedItem = activeItemPath.find(function (p) {
1090
1091
  return p.key === focusedItemInfo.parentKey;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),n=require("primereact/api"),t=require("primereact/componentbase"),r=require("primereact/csstransition"),i=require("primereact/hooks"),o=require("primereact/overlayservice"),u=require("primereact/portal"),a=require("primereact/utils"),c=require("primereact/icons/angleright"),l=require("primereact/ripple");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function p(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var m=p(e),d=s(n);function f(){return f=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},f.apply(this,arguments)}function b(e){return b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},b(e)}function v(e,n){if("object"!==b(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!==b(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function y(e){var n=v(e,"string");return"symbol"===b(n)?n:String(n)}function g(e,n,t){return(n=y(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function h(e){if(Array.isArray(e))return e}function x(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,i,o,u,a=[],c=!0,l=!1;try{if(o=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=o.call(t)).done)&&(a.push(r.value),a.length!==n);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&null!=t.return&&(u=t.return(),Object(u)!==u))return}finally{if(l)throw i}}return a}}function I(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function O(e,n){if(e){if("string"==typeof e)return I(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?I(e,n):void 0}}function E(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function k(e,n){return h(e)||x(e,n)||O(e,n)||E()}var j=t.ComponentBase.extend({defaultProps:{__TYPE:"TieredMenu",id:null,model:null,popup:!1,style:null,className:null,autoZIndex:!0,baseZIndex:0,breakpoint:void 0,scrollHeight:"400px",appendTo:null,transitionOptions:null,onShow:null,onFocus:null,onBlur:null,onHide:null,submenuIcon:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.context;return a.classNames("p-tieredmenu p-component",{"p-tieredmenu-overlay":n.popup,"p-input-filled":t&&"filled"===t.inputStyle||"filled"===d.default.inputStyle,"p-ripple-disabled":t&&!1===t.ripple||!1===d.default.ripple},n.className)},separator:"p-menuitem-separator",icon:function(e){return a.classNames("p-menuitem-icon",e._icon)},content:"p-menuitem-content",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",action:"p-menuitem-link",menuitem:function(e){return a.classNames("p-menuitem",{"p-menuitem-active p-highlight":e.active,"p-focus":e.focused,"p-disabled":e.disabled},e._className)},menu:"p-tieredmenu-root-list",submenu:"p-submenu-list",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-tieredmenu-overlay {\n position: absolute;\n }\n\n .p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n\n .p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-text {\n line-height: 1;\n }\n\n .p-tieredmenu .p-menuitem {\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list-flipped {\n left: -100%;\n }\n}\n",inlineStyles:{submenu:function(e){var n=e.subProps;return{display:!n.root&&n.parentActive?"block":"none"}}}}});function S(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function D(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?S(Object(t),!0).forEach((function(n){g(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):S(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var w=m.memo(m.forwardRef((function(e,n){var t=m.useRef(null),r=i.useMergeProps(),o=e.ptm,u=e.cx,s=e.sx,p=function(n,t){return o(t,{hostName:e.hostName,context:{active:y(n)}})},d=function(){if(t.current){var e=t.current.parentElement,n=a.DomHandler.getOffset(e),r=a.DomHandler.getViewport(),i=t.current.offsetParent?t.current.offsetWidth:a.DomHandler.getHiddenElementOuterWidth(t.current),o=a.DomHandler.getOuterWidth(e.children[0]),u=parseInt(n.top,10)+t.current.offsetHeight-a.DomHandler.getWindowScrollTop();t.current.style.top=u>r.height?r.height-u+"px":"0px",parseInt(n.left,10)+o+i>r.width-a.DomHandler.calculateScrollbarWidth()&&a.DomHandler.addClass(t.current,"p-submenu-list-flipped")}},f=function(n,t){var r=t.item;h(t)?n.preventDefault():(r.url||n.preventDefault(),r.command&&r.command({originalEvent:n,item:r}),e.onItemClick&&e.onItemClick({originalEvent:n,processedItem:t}))},b=function(n){return"".concat(e.menuId,"_").concat(n.key)},v=function(e,n,t){return e&&e.item?a.ObjectUtils.getItemValue(e.item[n],t):void 0},y=function(n){return e.activeItemPath.some((function(e){return e.key===n.key}))},g=function(e){return!1!==v(e,"visible")},h=function(e){return v(e,"disabled")},x=function(n){return e.focusedItemId===b(n)},I=function(e){return a.ObjectUtils.isNotEmpty(e.items)},O=function(n,t){e.onItemMouseEnter&&e.onItemMouseEnter({originalEvent:n,processedItem:t})},E=function(n){return n-e.model.slice(0,n).filter((function(e){return g(e)&&v(e,"separator")})).length+1};i.useUpdateEffect((function(){e.root||!e.parentActive||e.isMobileMode||d()}),[e.parentActive]),m.useImperativeHandle(n,(function(){return{getElement:function(){return t.current}}}));var k=function(n){var t=r({key:"separator_"+n,className:u("separator"),role:"separator"},o("separator",{hostName:e.hostName}));return m.createElement("li",t)},j=function(n,t){return I(n)?m.createElement(w,{id:e.id+"_"+t,menuProps:e.menuProps,model:n.items,menuId:e.menuId,ariaLabelledby:b(n),focusedItemId:e.focusedItemId,activeItemPath:e.activeItemPath,level:e.level+1,onItemClick:e.onItemClick,popup:e.popup,onItemMouseEnter:e.onItemMouseEnter,parentActive:y(n),isMobileMode:e.isMobileMode,submenuIcon:e.submenuIcon,ptm:e.ptm,cx:u,sx:s}):null},S=function(n,t){if(!1===g(n))return null;var i=n.item,o=v(n,"style"),s=v(n,"icon"),d=v(n,"target"),k=v(n,"url"),S=b(n),w=x(n),P=y(n),N=h(n),H=I(n),M=a.classNames("p-menuitem-link"),K=a.classNames("p-menuitem-icon",s),U=r({className:a.classNames(i.icon,"p-menuitem-icon","icon")},p(n,"icon")),T=a.IconUtils.getJSXIcon(s,D({},U),{props:e.menuProps}),C=r({className:u("label")},p(n,"label")),A=i.label&&m.createElement("span",C,i.label),L=r({className:u("submenuIcon")},p(n,"submenuIcon")),R=H&&a.IconUtils.getJSXIcon(e.submenuIcon||m.createElement(c.AngleRightIcon,L),D({},L),{props:e.menuProps}),_=j(n,t),q=r({href:k||"#","aria-hidden":!0,tabIndex:"-1",onFocus:function(e){return e.stopPropagation()},className:u("action"),target:d},p(n,"action")),W=m.createElement("a",q,T,A,R,m.createElement(l.Ripple,null));i.template&&(W=a.ObjectUtils.getJSXElement(i.template,i,{className:M,labelClassName:"p-menuitem-text",iconClassName:K,submenuIconClassName:"p-submenu-icon",element:W,props:e,active:P,disabled:N}));var B=r({onClick:function(e){return f(e,n)},onMouseEnter:function(e){return O(e,n)},className:u("content")},p(n,"content")),Z=r({key:S,id:S,"aria-label":i.label,"aria-disabled":N,"aria-expanded":H?P:void 0,"aria-haspopup":H&&!k?"menu":void 0,"aria-level":e.level+1,"aria-setsize":e.model.filter((function(e){return g(e)&&!v(e,"separator")})).length,"aria-posinset":E(t),"data-p-highlight":P,"data-p-disabled":N,"data-p-visited":w,className:u("menuitem",{className:i.className,active:P,focused:w,disabled:N}),style:o,onMouseEnter:function(e){return O(e,i)},role:"menuitem"},p(n,"menuitem"));return m.createElement("li",Z,m.createElement("div",B,W),_)},P=e.model?e.model.map((function(e,n){return v(e,"separator")?k(n):S(e,n)})):null,N=e.root?"menu":"submenu",H=r({ref:t,id:e.id,tabIndex:e.tabIndex,onFocus:e.onFocus,onBlur:e.onBlur,onKeyDown:e.onKeyDown,className:u(N,{subProps:e}),style:s(N,{subProps:e}),role:e.root?"menubar":"menu","aria-label":e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-orientation":e.ariaOrientation,"aria-activedescendant":e.focusedItemId},o(N,{hostName:e.hostName}));return m.createElement("ul",H,P)})));function P(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function N(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?P(Object(t),!0).forEach((function(n){g(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):P(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}w.displayName="TieredMenuSub";var H=m.memo(m.forwardRef((function(e,c){var l=i.useMergeProps(),s=m.useContext(n.PrimeReactContext),p=j.getProps(e,s),b=k(m.useState(p.id),2),v=b[0],y=b[1],g=k(m.useState(!p.popup),2),h=g[0],x=g[1],I=k(m.useState([]),2),O=I[0],E=I[1],S=k(m.useState(!1),2),D=S[0],P=S[1],H=k(m.useState(null),2),M=H[0],K=H[1],U=k(m.useState({index:-1,level:0,parentKey:""}),2),T=U[0],C=U[1],A=k(m.useState(!1),2),L=A[0],R=A[1],_=k(m.useState([]),2),q=_[0],W=_[1],B=k(m.useState([]),2),Z=B[0],F=B[1],z=k(m.useState(!1),2),V=z[0],J=z[1],X=k(m.useState(null),2),Y=X[0],$=X[1],G=j.setMetaData({props:p,state:{id:v,visible:h,attributeSelector:Y}}),Q=G.ptm,ee=G.cx,ne=G.sx;t.useHandleStyle(j.css.styles,G.isUnstyled,{name:"tieredmenu"});var te=m.useRef(null),re=m.useRef(null),ie=m.useRef(null),oe=m.useRef(null),ue=m.useRef(null),ae=m.useRef(null),ce=m.useRef(null),le=i.useMatchMedia("screen and (max-width: ".concat(p.breakpoint,")"),!!p.breakpoint),se=k(i.useEventListener({type:"click",listener:function(e){var n=te.current&&!te.current.contains(e.target),t=!p.popup||!(ie.current&&(ie.current===e.target||ie.current.contains(e.target)));n&&t&&he(e,!p.popup)}}),2),pe=se[0],me=se[1],de=k(i.useResizeListener({listener:function(){!le&&he(event,!0)}}),2),fe=de[0],be=de[1],ve=function(e){p.popup&&o.OverlayService.emit("overlay-click",{originalEvent:e,target:ie.current})},ye=function(e){p.popup&&(h?he(e):ge(e))},ge=function(e){p.popup&&(ie.current=e.currentTarget,x(!0),p.onShow&&p.onShow(e),oe.current=e.relatedTarget||null),C({index:Ye(),level:0,parentKey:""})},he=function(e,n){p.popup&&(x(!1),p.onHide&&p.onHide(e));var t=Ce();E([]),C({index:-1,level:0,parentKey:""}),n&&a.DomHandler.focus(oe.current||ie.current||t),R(!1)},xe=function(e){P(!0),C(-1!==T.index?T:{index:Ye(),level:0,parentKey:""}),p.onFocus&&p.onFocus(e)},Ie=function(e){P(!1),C({index:-1,level:0,parentKey:""}),ae.current="",R(!1),p.onBlur&&p.onBlur(e)},Oe=function(e){var n=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":Se(e);break;case"ArrowUp":De(e);break;case"ArrowLeft":we(e);break;case"ArrowRight":Pe(e);break;case"Home":Ne(e);break;case"End":He(e);break;case"Space":Ke(e);break;case"Enter":Me(e);break;case"Escape":p.popup&&a.DomHandler.focus(ie.current),Ue(e);break;case"Tab":Te(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!n&&a.ObjectUtils.isPrintableCharacter(e.key)&&Ge(e.key)}},Ee=function(e){var n=e.processedItem,t=e.isFocus;if(!a.ObjectUtils.isEmpty(n)){var r=n.index,i=n.key,o=n.level,u=n.parentKey,c=a.ObjectUtils.isNotEmpty(n.items),l=O.filter((function(e){return e.parentKey!==u&&e.parentKey!==i}));c&&l.push(n),C({index:r,level:o,parentKey:u}),E(l),c&&R(!0),t&&a.DomHandler.focus(Ce())}},ke=function(e){var n=e.originalEvent,t=e.processedItem;if(!Le(t)&&!p.isMobileMode){var r=_e(t),i=a.ObjectUtils.isEmpty(t.parent),o=Ze(t),u=Ce();if(o){var c=t.index,l=t.key,s=t.level,m=t.parentKey;E(O.filter((function(e){return l!==e.key&&l.startsWith(e.key)}))),C({index:c,level:s,parentKey:m}),r||R(!i),setTimeout((function(){a.DomHandler.focus(u),r&&R(!0)}),0)}else if(r)a.DomHandler.focus(u),Ee(e);else{var d=i?t:O.find((function(e){return""===e.parentKey})),f=d?d.index:-1;he(n,!0),C({index:f,parentKey:d?d.parentKey:""})}}},je=function(e){var n=e.originalEvent;Le(e.processedItem)||p.isMobileMode?n.preventDefault():L&&!p.popup&&Ee(e)},Se=function(e){var n=-1!==T.index?Ve(T.index):Ye();Qe(n),e.preventDefault()},De=function(e){if(e.altKey){if(p.popup&&a.DomHandler.focus(ie.current),-1!==T.index){var n=Z[T.index];!_e(n)&&Ee({originalEvent:e,processedItem:n})}p.popup&&he(e,!0),e.preventDefault()}else{var t=-1!==T.index?Je(T.index):$e();Qe(t),e.preventDefault()}},we=function(e){var n=Z[T.index],t=O.find((function(e){return e.key===n.parentKey}));a.ObjectUtils.isEmpty(n.parent)||(C({index:-1,parentKey:t?t.parentKey:""}),ae.current="",setTimeout((function(){return J(!0)}),0)),E(O.filter((function(e){return e.parentKey!==T.parentKey}))),e.preventDefault()},Pe=function(e){var n=Z[T.index];_e(n)&&(Ee({originalEvent:e,processedItem:n}),C({index:-1,parentKey:n.key}),ae.current="",setTimeout((function(){return J(!0)}),0)),e.preventDefault()},Ne=function(e){Qe(Fe()),e.preventDefault()},He=function(e){Qe(ze()),e.preventDefault()},Me=function(e){if(-1!==T.index){var n=a.DomHandler.findSingle(Ce(),'li[id="'.concat("".concat(M),'"]')),t=n&&a.DomHandler.findSingle(n,'[data-pc-section="action"]');p.popup&&a.DomHandler.focus(ie.current),t?t.click():n&&n.click()}e.preventDefault()},Ke=function(e){Me(e)},Ue=function(e){he(e,!0),!p.popup&&C(N(N({},T),{},{index:Ye()})),e.preventDefault()},Te=function(e){if(-1!==T.index){var n=Z[T.index];!_e(n)&&Ee({originalEvent:e,processedItem:n})}he(e)},Ce=function(){return re.current.getElement()||null},Ae=function(e,n){return e?a.ObjectUtils.getItemValue(e[n]):void 0},Le=function(e){return Ae(e,"disabled")},Re=function(e){return e?Ae(e.item,"label"):void 0},_e=function(e){return e&&a.ObjectUtils.isNotEmpty(e.items)},qe=function(e){return We(e)&&Re(e).toLocaleLowerCase().startsWith(ae.current.toLocaleLowerCase())},We=function(e){return!!e&&!Le(e.item)&&!Ae(e.item,"separator")},Be=function(e){return We(e)&&Ze(e)},Ze=function(e){return O.some((function(n){return n.key===e.key}))},Fe=function(){return Z.findIndex((function(e){return We(e)}))},ze=function(){return a.ObjectUtils.findLastIndex(Z,(function(e){return We(e)}))},Ve=function(e){var n=e<Z.length-1?Z.slice(e+1).findIndex((function(e){return We(e)})):-1;return n>-1?n+e+1:e},Je=function(e){var n=e>0?a.ObjectUtils.findLastIndex(Z.slice(0,e),(function(e){return We(e)})):-1;return n>-1?n:e},Xe=function(){return Z.findIndex((function(e){return Be(e)}))},Ye=function(){var e=Xe();return e<0?Fe():e},$e=function(){var e=Xe();return e<0?ze():e},Ge=function(e){ae.current=(ae.current||"")+e;var n=-1,t=!1;return-1!==(n=-1!==T.index?-1===(n=Z.slice(T.index).findIndex((function(e){return qe(e)})))?Z.slice(0,T.index).findIndex((function(e){return qe(e)})):n+T.index:Z.findIndex((function(e){return qe(e)})))&&(t=!0),-1===n&&-1===T.index&&(n=Ye()),-1!==n&&Qe(n),ce.current&&clearTimeout(ce),ce.current=setTimeout((function(){ae.current="",ce.current=null}),500),t},Qe=function(e){T.index!==e&&(C(N(N({},T),{},{index:e})),en())},en=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=-1!==e?"".concat(v,"_").concat(e):M,t=a.DomHandler.findSingle(Ce(),'li[id="'.concat(n,'"]'));t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest",inline:"start"})},nn=function e(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",o=[];return n&&n.forEach((function(n,u){var a=(""!==i?i+"_":"")+u,c={item:n,index:u,level:t,key:a,parent:r,parentKey:i};c.items=e(n.items,t+1,c,a),o.push(c)})),o},tn=function(){if(!ue.current){ue.current=a.DomHandler.createInlineStyle(s&&s.nonce||d.default.nonce,s&&s.styleContainer);var e="".concat(Y),n="\n@media screen and (max-width: ".concat(p.breakpoint,") {\n .p-tieredmenu[").concat(e,"] > ul {\n max-height: ").concat(p.scrollHeight,";\n overflow: ").concat(p.scrollHeight?"auto":"",";\n }\n\n .p-tieredmenu[").concat(e,"] .p-submenu-list {\n position: relative;\n }\n\n .p-tieredmenu[").concat(e,"] .p-menuitem-active > .p-submenu-list {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-tieredmenu[").concat(e,"] .p-menuitem-active > .p-menuitem-link > .p-submenu-icon {\n transform: rotate(-180deg);\n }\n\n .p-tieredmenu[").concat(e,'] .p-submenu-icon:before {\n content: "\\e930";\n }\n\n ').concat(p.popup?"":".p-tieredmenu[".concat(e,"] { width: 100%; }"),"\n}\n");ue.current.innerHTML=n}},rn=function(){ue.current=a.DomHandler.removeInlineStyle(ue.current)},on=function(){p.autoZIndex&&a.ZIndexUtils.set("menu",te.current,s&&s.autoZIndex||d.default.autoZIndex,p.baseZIndex||s&&s.zIndex.menu||d.default.zIndex.menu),a.DomHandler.addStyles(te.current,{position:"absolute",top:"0",left:"0"}),a.DomHandler.absolutePosition(te.current,ie.current),a.DomHandler.getOuterWidth(ie.current)>a.DomHandler.getOuterWidth(te.current)&&(te.current.style.minWidth=a.DomHandler.getOuterWidth(ie.current)+"px"),a.DomHandler.focus(re.current.getElement()),en(),Y&&p.breakpoint&&(te.current.setAttribute(Y,""),tn())},un=function(){pe(),fe()},an=function(){ie.current=null,me(),be()},cn=function(){a.ZIndexUtils.clear(te.current),rn()};i.useMountEffect((function(){var e=a.UniqueComponentId();!v&&y(e),p.breakpoint&&!Y&&$(e)})),i.useUpdateEffect((function(){var e=nn(p.model||[]);W(e)}),p.model),i.useUpdateEffect((function(){var e=O.find((function(e){return e.key===T.parentKey}));F(e?e.items:q)}),[O,T,q]),i.useUpdateEffect((function(){var e=-1!==T.index?"".concat(v).concat(a.ObjectUtils.isNotEmpty(T.parentKey)?"_"+T.parentKey:"","_").concat(T.index):null;K(e)}),[T]),i.useUpdateEffect((function(){p.popup||(a.ObjectUtils.isNotEmpty(O)?(pe(),fe()):(me(),be()))}),[O]),i.useUpdateEffect((function(){if(V){var e=-1!==T.index?Ve(T.index):Ye();Qe(e),E(O.filter((function(e){return e.parentKey!==T.parentKey}))),J(!1)}}),[V]),i.useUpdateEffect((function(){return Y&&te.current&&(te.current.setAttribute(Y,""),tn()),function(){rn()}}),[Y,p.breakpoint]),i.useUnmountEffect((function(){a.ZIndexUtils.clear(te.current)})),m.useImperativeHandle(c,(function(){return{props:p,toggle:ye,show:ge,hide:he,getElement:function(){return te.current}}}));var ln,sn,pn=(ln=l({ref:te,id:p.id,className:ee("root"),style:p.style,onClick:ve},j.getOtherProps(p),Q("root")),sn=l({classNames:ee("transition"),in:h,timeout:{enter:120,exit:100},options:p.transitionOptions,unmountOnExit:!0,onEnter:on,onEntered:un,onExit:an,onExited:cn},Q("transition")),m.createElement(r.CSSTransition,f({nodeRef:te},sn),m.createElement("div",ln,m.createElement(w,{id:v+"_list",ref:re,hostName:"TieredMenu",menuProps:p,tabIndex:0,model:q,ariaLabel:p.ariaLabel,ariaLabelledBy:p.ariaLabelledBy,ariaOrientation:"vertical",ariaActiveDescendant:D?M:void 0,menuId:v,level:0,focusedItemId:M,activeItemPath:O,onFocus:xe,onBlur:Ie,onKeyDown:Oe,onItemClick:ke,onItemMouseEnter:je,root:!0,popup:p.popup,onHide:he,isMobileMode:le,submenuIcon:p.submenuIcon,ptm:Q,cx:ee,sx:ne}))));return p.popup?m.createElement(u.Portal,{element:pn,appendTo:p.appendTo}):pn})));H.displayName="TieredMenu",exports.TieredMenu=H;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),n=require("primereact/api"),t=require("primereact/componentbase"),r=require("primereact/csstransition"),i=require("primereact/hooks"),o=require("primereact/overlayservice"),u=require("primereact/portal"),a=require("primereact/utils"),c=require("primereact/icons/angleright"),l=require("primereact/ripple");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function p(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var m=p(e),d=s(n);function f(){return f=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},f.apply(this,arguments)}function b(e){return b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},b(e)}function v(e,n){if("object"!==b(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!==b(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function y(e){var n=v(e,"string");return"symbol"===b(n)?n:String(n)}function g(e,n,t){return(n=y(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function h(e){if(Array.isArray(e))return e}function x(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,i,o,u,a=[],c=!0,l=!1;try{if(o=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=o.call(t)).done)&&(a.push(r.value),a.length!==n);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&null!=t.return&&(u=t.return(),Object(u)!==u))return}finally{if(l)throw i}}return a}}function I(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function O(e,n){if(e){if("string"==typeof e)return I(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?I(e,n):void 0}}function E(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function k(e,n){return h(e)||x(e,n)||O(e,n)||E()}var j=t.ComponentBase.extend({defaultProps:{__TYPE:"TieredMenu",id:null,model:null,popup:!1,style:null,className:null,autoZIndex:!0,baseZIndex:0,breakpoint:void 0,scrollHeight:"400px",appendTo:null,transitionOptions:null,onShow:null,onFocus:null,onBlur:null,onHide:null,submenuIcon:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.context;return a.classNames("p-tieredmenu p-component",{"p-tieredmenu-overlay":n.popup,"p-input-filled":t&&"filled"===t.inputStyle||"filled"===d.default.inputStyle,"p-ripple-disabled":t&&!1===t.ripple||!1===d.default.ripple},n.className)},separator:"p-menuitem-separator",icon:function(e){return a.classNames("p-menuitem-icon",e._icon)},content:"p-menuitem-content",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",action:"p-menuitem-link",menuitem:function(e){return a.classNames("p-menuitem",{"p-menuitem-active p-highlight":e.active,"p-focus":e.focused,"p-disabled":e.disabled},e.itemClassName)},menu:"p-tieredmenu-root-list",submenu:"p-submenu-list",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-tieredmenu-overlay {\n position: absolute;\n }\n\n .p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n\n .p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-text {\n line-height: 1;\n }\n\n .p-tieredmenu .p-menuitem {\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list-flipped {\n left: -100%;\n }\n}\n",inlineStyles:{submenu:function(e){var n=e.subProps;return{display:!n.root&&n.parentActive?"block":"none"}}}}});function S(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function D(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?S(Object(t),!0).forEach((function(n){g(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):S(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var w=m.memo(m.forwardRef((function(e,n){var t=m.useRef(null),r=i.useMergeProps(),o=e.ptm,u=e.cx,s=e.sx,p=function(n,t){return o(t,{hostName:e.hostName,context:{active:y(n)}})},d=function(){if(t.current){var e=t.current.parentElement,n=a.DomHandler.getOffset(e),r=a.DomHandler.getViewport(),i=t.current.offsetParent?t.current.offsetWidth:a.DomHandler.getHiddenElementOuterWidth(t.current),o=a.DomHandler.getOuterWidth(e.children[0]),u=parseInt(n.top,10)+t.current.offsetHeight-a.DomHandler.getWindowScrollTop();t.current.style.top=u>r.height?r.height-u+"px":"0px",parseInt(n.left,10)+o+i>r.width-a.DomHandler.calculateScrollbarWidth()&&a.DomHandler.addClass(t.current,"p-submenu-list-flipped")}},f=function(n,t){var r=t.item;h(t)?n.preventDefault():(r.url||n.preventDefault(),r.command&&r.command({originalEvent:n,item:r}),e.onItemClick&&e.onItemClick({originalEvent:n,processedItem:t}))},b=function(n){return"".concat(e.menuId,"_").concat(n.key)},v=function(e,n,t){return e&&e.item?a.ObjectUtils.getItemValue(e.item[n],t):void 0},y=function(n){return e.activeItemPath.some((function(e){return e.key===n.key}))},g=function(e){return!1!==v(e,"visible")},h=function(e){return v(e,"disabled")},x=function(n){return e.focusedItemId===b(n)},I=function(e){return a.ObjectUtils.isNotEmpty(e.items)},O=function(n,t){e.onItemMouseEnter&&e.onItemMouseEnter({originalEvent:n,processedItem:t})},E=function(n){return n-e.model.slice(0,n).filter((function(e){return g(e)&&v(e,"separator")})).length+1};i.useUpdateEffect((function(){e.root||!e.parentActive||e.isMobileMode||d()}),[e.parentActive]),m.useImperativeHandle(n,(function(){return{getElement:function(){return t.current}}}));var k=function(n){var t=r({key:"separator_"+n,className:u("separator"),role:"separator"},o("separator",{hostName:e.hostName}));return m.createElement("li",t)},j=function(n,t){return I(n)?m.createElement(w,{id:e.id+"_"+t,menuProps:e.menuProps,model:n.items,menuId:e.menuId,ariaLabelledby:b(n),focusedItemId:e.focusedItemId,activeItemPath:e.activeItemPath,level:e.level+1,onItemClick:e.onItemClick,popup:e.popup,onItemMouseEnter:e.onItemMouseEnter,parentActive:y(n),isMobileMode:e.isMobileMode,submenuIcon:e.submenuIcon,ptm:e.ptm,cx:u,sx:s}):null},S=function(n,t){if(!1===g(n))return null;var i=n.item,o=v(n,"style"),s=v(n,"className"),d=v(n,"icon"),k=v(n,"target"),S=v(n,"url"),w=b(n),P=x(n),N=y(n),H=h(n),M=I(n),K=a.classNames("p-menuitem-link"),U=a.classNames("p-menuitem-icon",d),C=r({className:a.classNames(i.icon,"p-menuitem-icon","icon")},p(n,"icon")),T=a.IconUtils.getJSXIcon(d,D({},C),{props:e.menuProps}),A=r({className:u("label")},p(n,"label")),L=i.label&&m.createElement("span",A,i.label),R=r({className:u("submenuIcon")},p(n,"submenuIcon")),_=M&&a.IconUtils.getJSXIcon(e.submenuIcon||m.createElement(c.AngleRightIcon,R),D({},R),{props:e.menuProps}),q=j(n,t),W=r({href:S||"#","aria-hidden":!0,tabIndex:"-1",onFocus:function(e){return e.stopPropagation()},className:u("action"),target:k},p(n,"action")),B=m.createElement("a",W,T,L,_,m.createElement(l.Ripple,null));i.template&&(B=a.ObjectUtils.getJSXElement(i.template,i,{className:K,labelClassName:"p-menuitem-text",iconClassName:U,submenuIconClassName:"p-submenu-icon",element:B,props:e,active:N,disabled:H}));var Z=r({onClick:function(e){return f(e,n)},onMouseEnter:function(e){return O(e,n)},className:u("content")},p(n,"content")),F=r({key:w,id:w,"aria-label":i.label,"aria-disabled":H,"aria-expanded":M?N:void 0,"aria-haspopup":M&&!S?"menu":void 0,"aria-level":e.level+1,"aria-setsize":e.model.filter((function(e){return g(e)&&!v(e,"separator")})).length,"aria-posinset":E(t),"data-p-highlight":N,"data-p-disabled":H,"data-p-visited":P,className:u("menuitem",{itemClassName:s,active:N,focused:P,disabled:H}),style:o,onMouseEnter:function(e){return O(e,i)},role:"menuitem"},p(n,"menuitem"));return m.createElement("li",F,m.createElement("div",Z,B),q)},P=e.model?e.model.map((function(e,n){return v(e,"separator")?k(n):S(e,n)})):null,N=e.root?"menu":"submenu",H=r({ref:t,id:e.id,tabIndex:e.tabIndex,onFocus:e.onFocus,onBlur:e.onBlur,onKeyDown:e.onKeyDown,className:u(N,{subProps:e}),style:s(N,{subProps:e}),role:e.root?"menubar":"menu","aria-label":e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-orientation":e.ariaOrientation,"aria-activedescendant":e.focusedItemId},o(N,{hostName:e.hostName}));return m.createElement("ul",H,P)})));function P(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function N(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?P(Object(t),!0).forEach((function(n){g(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):P(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}w.displayName="TieredMenuSub";var H=m.memo(m.forwardRef((function(e,c){var l=i.useMergeProps(),s=m.useContext(n.PrimeReactContext),p=j.getProps(e,s),b=k(m.useState(p.id),2),v=b[0],y=b[1],g=k(m.useState(!p.popup),2),h=g[0],x=g[1],I=k(m.useState([]),2),O=I[0],E=I[1],S=k(m.useState(!1),2),D=S[0],P=S[1],H=k(m.useState(null),2),M=H[0],K=H[1],U=k(m.useState({index:-1,level:0,parentKey:""}),2),C=U[0],T=U[1],A=k(m.useState(!1),2),L=A[0],R=A[1],_=k(m.useState([]),2),q=_[0],W=_[1],B=k(m.useState([]),2),Z=B[0],F=B[1],z=k(m.useState(!1),2),V=z[0],J=z[1],X=k(m.useState(null),2),Y=X[0],$=X[1],G=j.setMetaData({props:p,state:{id:v,visible:h,attributeSelector:Y}}),Q=G.ptm,ee=G.cx,ne=G.sx;t.useHandleStyle(j.css.styles,G.isUnstyled,{name:"tieredmenu"});var te=m.useRef(null),re=m.useRef(null),ie=m.useRef(null),oe=m.useRef(null),ue=m.useRef(null),ae=m.useRef(null),ce=m.useRef(null),le=i.useMatchMedia("screen and (max-width: ".concat(p.breakpoint,")"),!!p.breakpoint),se=k(i.useEventListener({type:"click",listener:function(e){var n=te.current&&!te.current.contains(e.target),t=!p.popup||!(ie.current&&(ie.current===e.target||ie.current.contains(e.target)));n&&t&&he(e,!p.popup)}}),2),pe=se[0],me=se[1],de=k(i.useResizeListener({listener:function(){!le&&he(event,!0)}}),2),fe=de[0],be=de[1],ve=function(e){p.popup&&o.OverlayService.emit("overlay-click",{originalEvent:e,target:ie.current})},ye=function(e){p.popup&&(h?he(e):ge(e))},ge=function(e){p.popup&&(ie.current=e.currentTarget,x(!0),p.onShow&&p.onShow(e),oe.current=e.relatedTarget||null),T({index:Ye(),level:0,parentKey:""})},he=function(e,n){p.popup&&(x(!1),p.onHide&&p.onHide(e));var t=Te();E([]),T({index:-1,level:0,parentKey:""}),n&&a.DomHandler.focus(oe.current||ie.current||t),R(!1)},xe=function(e){P(!0),T(-1!==C.index?C:{index:Ye(),level:0,parentKey:""}),p.onFocus&&p.onFocus(e)},Ie=function(e){P(!1),T({index:-1,level:0,parentKey:""}),ae.current="",R(!1),p.onBlur&&p.onBlur(e)},Oe=function(e){var n=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":Se(e);break;case"ArrowUp":De(e);break;case"ArrowLeft":we(e);break;case"ArrowRight":Pe(e);break;case"Home":Ne(e);break;case"End":He(e);break;case"Space":Ke(e);break;case"Enter":Me(e);break;case"Escape":p.popup&&a.DomHandler.focus(ie.current),Ue(e);break;case"Tab":Ce(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!n&&a.ObjectUtils.isPrintableCharacter(e.key)&&Ge(e.key)}},Ee=function(e){var n=e.processedItem,t=e.isFocus;if(!a.ObjectUtils.isEmpty(n)){var r=n.index,i=n.key,o=n.level,u=n.parentKey,c=a.ObjectUtils.isNotEmpty(n.items),l=O.filter((function(e){return e.parentKey!==u&&e.parentKey!==i}));c&&l.push(n),T({index:r,level:o,parentKey:u}),E(l),c&&R(!0),t&&a.DomHandler.focus(Te())}},ke=function(e){var n=e.originalEvent,t=e.processedItem;if(!Le(t)&&!p.isMobileMode){var r=_e(t),i=a.ObjectUtils.isEmpty(t.parent),o=Ze(t),u=Te();if(o){var c=t.index,l=t.key,s=t.level,m=t.parentKey;E(O.filter((function(e){return l!==e.key&&l.startsWith(e.key)}))),T({index:c,level:s,parentKey:m}),r||R(!i),setTimeout((function(){a.DomHandler.focus(u),r&&R(!0)}),0)}else if(r)a.DomHandler.focus(u),Ee(e);else{var d=i?t:O.find((function(e){return""===e.parentKey})),f=d?d.index:-1;he(n,!0),T({index:f,parentKey:d?d.parentKey:""})}}},je=function(e){var n=e.originalEvent;Le(e.processedItem)||p.isMobileMode?n.preventDefault():L&&!p.popup&&Ee(e)},Se=function(e){var n=-1!==C.index?Ve(C.index):Ye();Qe(n),e.preventDefault()},De=function(e){if(e.altKey){if(p.popup&&a.DomHandler.focus(ie.current),-1!==C.index){var n=Z[C.index];!_e(n)&&Ee({originalEvent:e,processedItem:n})}p.popup&&he(e,!0),e.preventDefault()}else{var t=-1!==C.index?Je(C.index):$e();Qe(t),e.preventDefault()}},we=function(e){var n=Z[C.index],t=O.find((function(e){return e.key===n.parentKey}));a.ObjectUtils.isEmpty(n.parent)||(T({index:-1,parentKey:t?t.parentKey:""}),ae.current="",setTimeout((function(){return J(!0)}),0)),E(O.filter((function(e){return e.parentKey!==C.parentKey}))),e.preventDefault()},Pe=function(e){var n=Z[C.index];_e(n)&&(Ee({originalEvent:e,processedItem:n}),T({index:-1,parentKey:n.key}),ae.current="",setTimeout((function(){return J(!0)}),0)),e.preventDefault()},Ne=function(e){Qe(Fe()),e.preventDefault()},He=function(e){Qe(ze()),e.preventDefault()},Me=function(e){if(-1!==C.index){var n=a.DomHandler.findSingle(Te(),'li[id="'.concat("".concat(M),'"]')),t=n&&a.DomHandler.findSingle(n,'[data-pc-section="action"]');p.popup&&a.DomHandler.focus(ie.current),t?t.click():n&&n.click()}e.preventDefault()},Ke=function(e){Me(e)},Ue=function(e){he(e,!0),!p.popup&&T(N(N({},C),{},{index:Ye()})),e.preventDefault()},Ce=function(e){if(-1!==C.index){var n=Z[C.index];!_e(n)&&Ee({originalEvent:e,processedItem:n})}he(e)},Te=function(){return re.current.getElement()||null},Ae=function(e,n){return e?a.ObjectUtils.getItemValue(e[n]):void 0},Le=function(e){return Ae(e,"disabled")},Re=function(e){return e?Ae(e.item,"label"):void 0},_e=function(e){return e&&a.ObjectUtils.isNotEmpty(e.items)},qe=function(e){return We(e)&&Re(e).toLocaleLowerCase().startsWith(ae.current.toLocaleLowerCase())},We=function(e){return!!e&&!Le(e.item)&&!Ae(e.item,"separator")},Be=function(e){return We(e)&&Ze(e)},Ze=function(e){return O.some((function(n){return n.key===e.key}))},Fe=function(){return Z.findIndex((function(e){return We(e)}))},ze=function(){return a.ObjectUtils.findLastIndex(Z,(function(e){return We(e)}))},Ve=function(e){var n=e<Z.length-1?Z.slice(e+1).findIndex((function(e){return We(e)})):-1;return n>-1?n+e+1:e},Je=function(e){var n=e>0?a.ObjectUtils.findLastIndex(Z.slice(0,e),(function(e){return We(e)})):-1;return n>-1?n:e},Xe=function(){return Z.findIndex((function(e){return Be(e)}))},Ye=function(){var e=Xe();return e<0?Fe():e},$e=function(){var e=Xe();return e<0?ze():e},Ge=function(e){ae.current=(ae.current||"")+e;var n=-1,t=!1;return-1!==(n=-1!==C.index?-1===(n=Z.slice(C.index).findIndex((function(e){return qe(e)})))?Z.slice(0,C.index).findIndex((function(e){return qe(e)})):n+C.index:Z.findIndex((function(e){return qe(e)})))&&(t=!0),-1===n&&-1===C.index&&(n=Ye()),-1!==n&&Qe(n),ce.current&&clearTimeout(ce),ce.current=setTimeout((function(){ae.current="",ce.current=null}),500),t},Qe=function(e){C.index!==e&&(T(N(N({},C),{},{index:e})),en())},en=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=-1!==e?"".concat(v,"_").concat(e):M,t=a.DomHandler.findSingle(Te(),'li[id="'.concat(n,'"]'));t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest",inline:"start"})},nn=m.useCallback((function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",i=[];return e&&e.forEach((function(e,o){var u=(""!==r?r+"_":"")+o,a={item:e,index:o,level:n,key:u,parent:t,parentKey:r};a.items=nn(e.items,n+1,a,u),i.push(a)})),i}),[]),tn=function(){if(!ue.current){ue.current=a.DomHandler.createInlineStyle(s&&s.nonce||d.default.nonce,s&&s.styleContainer);var e="".concat(Y),n="\n@media screen and (max-width: ".concat(p.breakpoint,") {\n .p-tieredmenu[").concat(e,"] > ul {\n max-height: ").concat(p.scrollHeight,";\n overflow: ").concat(p.scrollHeight?"auto":"",";\n }\n\n .p-tieredmenu[").concat(e,"] .p-submenu-list {\n position: relative;\n }\n\n .p-tieredmenu[").concat(e,"] .p-menuitem-active > .p-submenu-list {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-tieredmenu[").concat(e,"] .p-menuitem-active > .p-menuitem-link > .p-submenu-icon {\n transform: rotate(-180deg);\n }\n\n .p-tieredmenu[").concat(e,'] .p-submenu-icon:before {\n content: "\\e930";\n }\n\n ').concat(p.popup?"":".p-tieredmenu[".concat(e,"] { width: 100%; }"),"\n}\n");ue.current.innerHTML=n}},rn=function(){ue.current=a.DomHandler.removeInlineStyle(ue.current)},on=function(){p.autoZIndex&&a.ZIndexUtils.set("menu",te.current,s&&s.autoZIndex||d.default.autoZIndex,p.baseZIndex||s&&s.zIndex.menu||d.default.zIndex.menu),a.DomHandler.addStyles(te.current,{position:"absolute",top:"0",left:"0"}),a.DomHandler.absolutePosition(te.current,ie.current),a.DomHandler.getOuterWidth(ie.current)>a.DomHandler.getOuterWidth(te.current)&&(te.current.style.minWidth=a.DomHandler.getOuterWidth(ie.current)+"px"),a.DomHandler.focus(re.current.getElement()),en(),Y&&p.breakpoint&&(te.current.setAttribute(Y,""),tn())},un=function(){pe(),fe()},an=function(){ie.current=null,me(),be()},cn=function(){a.ZIndexUtils.clear(te.current),rn()};i.useMountEffect((function(){var e=a.UniqueComponentId();!v&&y(e),p.breakpoint&&!Y&&$(e)})),m.useEffect((function(){var e=nn(p.model||[]);W(e)}),[p.model,nn]),i.useUpdateEffect((function(){var e=O.find((function(e){return e.key===C.parentKey}));F(e?e.items:q)}),[O,C,q]),i.useUpdateEffect((function(){var e=-1!==C.index?"".concat(v).concat(a.ObjectUtils.isNotEmpty(C.parentKey)?"_"+C.parentKey:"","_").concat(C.index):null;K(e)}),[C]),i.useUpdateEffect((function(){p.popup||(a.ObjectUtils.isNotEmpty(O)?(pe(),fe()):(me(),be()))}),[O]),i.useUpdateEffect((function(){if(V){var e=-1!==C.index?Ve(C.index):Ye();Qe(e),E(O.filter((function(e){return e.parentKey!==C.parentKey}))),J(!1)}}),[V]),i.useUpdateEffect((function(){return Y&&te.current&&(te.current.setAttribute(Y,""),tn()),function(){rn()}}),[Y,p.breakpoint]),i.useUnmountEffect((function(){a.ZIndexUtils.clear(te.current)})),m.useImperativeHandle(c,(function(){return{props:p,toggle:ye,show:ge,hide:he,getElement:function(){return te.current}}}));var ln,sn,pn=(ln=l({ref:te,id:p.id,className:ee("root"),style:p.style,onClick:ve},j.getOtherProps(p),Q("root")),sn=l({classNames:ee("transition"),in:h,timeout:{enter:120,exit:100},options:p.transitionOptions,unmountOnExit:!0,onEnter:on,onEntered:un,onExit:an,onExited:cn},Q("transition")),m.createElement(r.CSSTransition,f({nodeRef:te},sn),m.createElement("div",ln,m.createElement(w,{id:v+"_list",ref:re,hostName:"TieredMenu",menuProps:p,tabIndex:0,model:q,ariaLabel:p.ariaLabel,ariaLabelledBy:p.ariaLabelledBy,ariaOrientation:"vertical",ariaActiveDescendant:D?M:void 0,menuId:v,level:0,focusedItemId:M,activeItemPath:O,onFocus:xe,onBlur:Ie,onKeyDown:Oe,onItemClick:ke,onItemMouseEnter:je,root:!0,popup:p.popup,onHide:he,isMobileMode:le,submenuIcon:p.submenuIcon,ptm:Q,cx:ee,sx:ne}))));return p.popup?m.createElement(u.Portal,{element:pn,appendTo:p.appendTo}):pn})));H.displayName="TieredMenu",exports.TieredMenu=H;