primereact 10.3.3 → 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.
- package/accordion/accordion.cjs.js +1 -1
- package/accordion/accordion.cjs.min.js +1 -1
- package/accordion/accordion.esm.js +1 -1
- package/accordion/accordion.esm.min.js +1 -1
- package/accordion/accordion.js +1 -1
- package/accordion/accordion.min.js +1 -1
- package/calendar/calendar.cjs.js +18 -11
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.esm.js +18 -11
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +18 -11
- package/calendar/calendar.min.js +1 -1
- package/carousel/carousel.cjs.js +1 -0
- package/carousel/carousel.cjs.min.js +1 -1
- package/carousel/carousel.esm.js +1 -0
- package/carousel/carousel.esm.min.js +1 -1
- package/carousel/carousel.js +1 -0
- package/carousel/carousel.min.js +1 -1
- package/chips/chips.cjs.js +2 -1
- package/chips/chips.cjs.min.js +1 -1
- package/chips/chips.esm.js +2 -1
- package/chips/chips.esm.min.js +1 -1
- package/chips/chips.js +2 -1
- package/chips/chips.min.js +1 -1
- package/core/core.js +53 -40
- package/core/core.min.js +2 -2
- package/datatable/datatable.cjs.js +577 -153
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.esm.js +573 -149
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +577 -153
- package/datatable/datatable.min.js +1 -1
- package/dataview/dataview.d.ts +2 -2
- package/divider/divider.cjs.js +2 -2
- package/divider/divider.cjs.min.js +1 -1
- package/divider/divider.esm.js +2 -2
- package/divider/divider.esm.min.js +1 -1
- package/divider/divider.js +2 -2
- package/divider/divider.min.js +1 -1
- package/dropdown/dropdown.cjs.js +20 -25
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.d.ts +9 -0
- package/dropdown/dropdown.esm.js +20 -25
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +20 -25
- package/dropdown/dropdown.min.js +1 -1
- package/editor/editor.cjs.js +1 -1
- package/editor/editor.cjs.min.js +1 -1
- package/editor/editor.esm.js +1 -1
- package/editor/editor.esm.min.js +1 -1
- package/editor/editor.js +1 -1
- package/editor/editor.min.js +1 -1
- package/focustrap/focustrap.cjs.js +168 -0
- package/focustrap/focustrap.cjs.min.js +1 -0
- package/focustrap/focustrap.esm.js +159 -0
- package/focustrap/focustrap.esm.min.js +1 -0
- package/focustrap/focustrap.js +167 -0
- package/focustrap/focustrap.min.js +1 -0
- package/focustrap/package.json +7 -0
- package/galleria/galleria.cjs.js +26 -24
- package/galleria/galleria.cjs.min.js +1 -1
- package/galleria/galleria.esm.js +26 -24
- package/galleria/galleria.esm.min.js +1 -1
- package/galleria/galleria.js +26 -24
- package/galleria/galleria.min.js +1 -1
- package/hooks/hooks.d.ts +1 -1
- package/menubar/menubar.cjs.js +3 -0
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.esm.js +3 -0
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +3 -0
- package/menubar/menubar.min.js +1 -1
- package/package.json +1 -1
- package/panelmenu/panelmenu.cjs.js +32 -21
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.esm.js +32 -21
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +32 -21
- package/panelmenu/panelmenu.min.js +1 -1
- package/primereact.all.cjs.js +742 -482
- package/primereact.all.cjs.min.js +1 -1
- package/primereact.all.esm.js +742 -482
- package/primereact.all.esm.min.js +1 -1
- package/primereact.all.js +742 -482
- package/primereact.all.min.js +1 -1
- package/sidebar/sidebar.cjs.js +18 -16
- package/sidebar/sidebar.cjs.min.js +1 -1
- package/sidebar/sidebar.esm.js +18 -16
- package/sidebar/sidebar.esm.min.js +1 -1
- package/sidebar/sidebar.js +18 -16
- package/sidebar/sidebar.min.js +1 -1
- package/splitbutton/splitbutton.cjs.js +4 -3
- package/splitbutton/splitbutton.cjs.min.js +1 -1
- package/splitbutton/splitbutton.esm.js +4 -3
- package/splitbutton/splitbutton.esm.min.js +1 -1
- package/splitbutton/splitbutton.js +4 -3
- package/splitbutton/splitbutton.min.js +1 -1
- package/splitter/splitter.cjs.js +57 -12
- package/splitter/splitter.cjs.min.js +1 -1
- package/splitter/splitter.d.ts +13 -1
- package/splitter/splitter.esm.js +59 -14
- package/splitter/splitter.esm.min.js +1 -1
- package/splitter/splitter.js +57 -12
- package/splitter/splitter.min.js +1 -1
- package/tieredmenu/tieredmenu.cjs.js +4 -3
- package/tieredmenu/tieredmenu.cjs.min.js +1 -1
- package/tieredmenu/tieredmenu.esm.js +4 -3
- package/tieredmenu/tieredmenu.esm.min.js +1 -1
- package/tieredmenu/tieredmenu.js +4 -3
- package/tieredmenu/tieredmenu.min.js +1 -1
- package/tree/tree.cjs.js +33 -15
- package/tree/tree.cjs.min.js +1 -1
- package/tree/tree.esm.js +34 -16
- package/tree/tree.esm.min.js +1 -1
- package/tree/tree.js +33 -15
- package/tree/tree.min.js +1 -1
- package/web-types.json +19 -1
package/splitter/splitter.esm.js
CHANGED
|
@@ -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
|
-
|
|
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-
|
|
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:
|
|
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};
|
package/splitter/splitter.js
CHANGED
|
@@ -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
|
-
|
|
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-
|
|
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:
|
|
592
|
+
id: panelId,
|
|
548
593
|
className: panelClassName,
|
|
549
594
|
style: _objectSpread(_objectSpread({}, getPanelProp(panel, 'style')), {}, {
|
|
550
595
|
flexBasis: flexBasis
|
package/splitter/splitter.min.js
CHANGED
|
@@ -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
|
|
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
|
-
},
|
|
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
|
-
|
|
444
|
+
itemClassName: itemClassName,
|
|
444
445
|
active: active,
|
|
445
446
|
focused: focused,
|
|
446
447
|
disabled: disabled
|
|
@@ -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")),C=a.IconUtils.getJSXIcon(s,D({},U),{props:e.menuProps}),T=r({className:u("label")},p(n,"label")),A=i.label&&m.createElement("span",T,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,C,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),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;
|
|
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;
|
|
@@ -141,7 +141,7 @@ var classes = {
|
|
|
141
141
|
submenuIcon: 'p-submenu-icon',
|
|
142
142
|
action: 'p-menuitem-link',
|
|
143
143
|
menuitem: function menuitem(_ref3) {
|
|
144
|
-
var
|
|
144
|
+
var itemClassName = _ref3.itemClassName,
|
|
145
145
|
active = _ref3.active,
|
|
146
146
|
focused = _ref3.focused,
|
|
147
147
|
disabled = _ref3.disabled;
|
|
@@ -149,7 +149,7 @@ var classes = {
|
|
|
149
149
|
'p-menuitem-active p-highlight': active,
|
|
150
150
|
'p-focus': focused,
|
|
151
151
|
'p-disabled': disabled
|
|
152
|
-
},
|
|
152
|
+
}, itemClassName);
|
|
153
153
|
},
|
|
154
154
|
menu: 'p-tieredmenu-root-list',
|
|
155
155
|
submenu: 'p-submenu-list',
|
|
@@ -338,6 +338,7 @@ var TieredMenuSub = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(funct
|
|
|
338
338
|
}
|
|
339
339
|
var item = processedItem.item;
|
|
340
340
|
var style = getItemProp(processedItem, 'style');
|
|
341
|
+
var itemClassName = getItemProp(processedItem, 'className');
|
|
341
342
|
var _icon = getItemProp(processedItem, 'icon');
|
|
342
343
|
var target = getItemProp(processedItem, 'target');
|
|
343
344
|
var url = getItemProp(processedItem, 'url');
|
|
@@ -413,7 +414,7 @@ var TieredMenuSub = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(funct
|
|
|
413
414
|
'data-p-disabled': disabled,
|
|
414
415
|
'data-p-visited': focused,
|
|
415
416
|
className: cx('menuitem', {
|
|
416
|
-
|
|
417
|
+
itemClassName: itemClassName,
|
|
417
418
|
active: active,
|
|
418
419
|
focused: focused,
|
|
419
420
|
disabled: disabled
|