@progress/kendo-react-data-tools 9.3.1 → 9.4.0-develop.10
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/clipboard/clipboard.service.js +1 -1
- package/clipboard/clipboard.service.mjs +0 -1
- package/clipboard/common.js +5 -5
- package/clipboard/common.mjs +0 -1
- package/columnmenu/ColumnMenu.js +2 -1
- package/columnmenu/ColumnMenuFilterForm.js +2 -1
- package/columnmenu/ColumnMenuFilterLogic.js +2 -1
- package/columnmenu/ColumnMenuFilterLogic.mjs +4 -4
- package/columnmenu/ColumnMenuFilters.js +2 -1
- package/columnmenu/ColumnMenuItem.js +2 -1
- package/columnmenu/ColumnMenuItem.mjs +4 -4
- package/columnmenu/ColumnMenuOperators.js +1 -1
- package/columnmenu/ColumnMenuOperators.mjs +0 -1
- package/detail-expansion/expandReducer.js +8 -0
- package/detail-expansion/expandReducer.mjs +26 -0
- package/detail-expansion/utils.js +8 -0
- package/detail-expansion/utils.mjs +17 -0
- package/dist/cdn/js/kendo-react-datatools.js +8 -1
- package/drag/ColumnDraggable.js +2 -1
- package/drag/ColumnResize.js +1 -1
- package/drag/ColumnResize.mjs +2 -3
- package/drag/ColumnResizer.js +2 -1
- package/drag/CommonDragLogic.js +1 -1
- package/drag/CommonDragLogic.mjs +0 -1
- package/drag/DragClue.js +2 -1
- package/drag/DragClue.mjs +4 -4
- package/drag/DropClue.js +2 -1
- package/drag/DropClue.mjs +3 -3
- package/editing/editReducer.js +8 -0
- package/editing/editReducer.mjs +43 -0
- package/editing/utils.js +8 -0
- package/editing/utils.mjs +17 -0
- package/filter/Expression.js +2 -1
- package/filter/Filter.js +2 -1
- package/filter/Filter.mjs +11 -11
- package/filter/Group.js +2 -1
- package/filter/filters/BooleanFilter.js +2 -1
- package/filter/filters/DateFilter.js +2 -1
- package/filter/filters/DateFilter.mjs +4 -4
- package/filter/filters/EnumFilter.js +2 -1
- package/filter/filters/NumericFilter.js +2 -1
- package/filter/filters/NumericFilter.mjs +4 -4
- package/filter/filters/TextFilter.js +2 -1
- package/filter/operators.js +1 -1
- package/filter/operators.mjs +0 -1
- package/filteringCells/BooleanFilter.js +2 -1
- package/filteringCells/BooleanFilter.mjs +4 -4
- package/filteringCells/DateFilter.js +2 -1
- package/filteringCells/DateFilter.mjs +5 -5
- package/filteringCells/FilterComponent.js +2 -1
- package/filteringCells/FilterComponent.mjs +7 -7
- package/filteringCells/NumericFilter.js +2 -1
- package/filteringCells/TextFilter.js +2 -1
- package/group-expansion/groupExpandReducer.js +8 -0
- package/group-expansion/groupExpandReducer.mjs +107 -0
- package/header/ColumnProps.js +1 -1
- package/header/ColumnProps.mjs +0 -1
- package/header/FilterRow.js +2 -1
- package/header/FilterRow.mjs +2 -2
- package/header/Header.js +2 -1
- package/header/HeaderCell.js +2 -1
- package/header/HeaderRow.js +2 -1
- package/header/HeaderRow.mjs +5 -5
- package/header/HeaderSelectionCell.js +2 -1
- package/header/HeaderTdElement.js +2 -1
- package/header/HeaderTdElement.mjs +6 -6
- package/header/HeaderThElement.js +2 -1
- package/header/HeaderThElement.mjs +6 -6
- package/header/SortSettings.js +1 -1
- package/header/SortSettings.mjs +2 -3
- package/header/utils/index.js +1 -1
- package/header/utils/index.mjs +5 -6
- package/index.d.mts +214 -12
- package/index.d.ts +214 -12
- package/index.js +1 -1
- package/index.mjs +156 -137
- package/messages/index.js +1 -1
- package/messages/index.mjs +0 -1
- package/navigation/NavigatableSettings.js +1 -1
- package/navigation/NavigatableSettings.mjs +2 -3
- package/navigation/TableKeyboardNavigation.js +2 -1
- package/navigation/TableKeyboardNavigationContext.js +2 -1
- package/navigation/TableKeyboardNavigationContext.mjs +4 -4
- package/navigation/constants.js +1 -1
- package/navigation/constants.mjs +8 -9
- package/navigation/hooks.js +2 -1
- package/navigation/hooks.mjs +5 -5
- package/navigation/utils.js +1 -1
- package/navigation/utils.mjs +0 -1
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +2 -3
- package/package.json +10 -10
- package/pager/Pager.js +2 -1
- package/pager/PagerInput.js +2 -1
- package/pager/PagerNumericButtons.js +2 -1
- package/pager/PagerNumericButtons.mjs +9 -9
- package/pager/PagerPageSizes.js +2 -1
- package/pager/PagerPageSizes.mjs +3 -3
- package/pager/utils.js +1 -1
- package/pager/utils.mjs +2 -3
- package/selection/TableSelection.js +2 -1
- package/selection/constants.js +1 -1
- package/selection/constants.mjs +0 -1
- package/selection/utils.js +1 -1
- package/selection/utils.mjs +63 -63
- package/utils/data-operations.js +1 -1
- package/utils/data-operations.mjs +82 -67
- package/utils/group-operations.js +1 -1
- package/utils/group-operations.mjs +7 -8
- package/virtualization/columns.js +1 -1
- package/virtualization/columns.mjs +19 -15
package/navigation/utils.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("@progress/kendo-react-common"),a=require("./constants.js"),m=(e,t,r="cell")=>`${t}_${e}_${r}`,B=e=>{if(e)return parseInt(e.getAttribute(a.KEYBOARD_NAV_DATA_LEVEL)||"",10)},b=e=>{if(!e)return;const t=e.getAttribute(a.KEYBOARD_NAV_DATA_ID);return t||void 0},A=e=>e?!!e.getAttribute(a.KEYBOARD_NAV_DATA_ID):!1,x=(e,t={level:0})=>e.querySelector(`[${a.KEYBOARD_NAV_DATA_LEVEL}='${t.level}']`),N=e=>e&&e.parentElement&&e.parentElement.closest(`[${a.KEYBOARD_NAV_DATA_LEVEL}]`),v=(e,t)=>e.querySelector(`[${a.KEYBOARD_NAV_DATA_ID}='${t}']`),y=e=>e&&e.parentElement&&e.parentElement.closest(`[${a.KEYBOARD_NAV_DATA_SCOPE}]`),w=e=>{const t=e&&e.parentElement&&e.parentElement.closest(".k-grid-edit-row");return t&&t.querySelector("."+a.KEYBOARD_NAV_CANCEL_BUTTON_CLASS)},T=e=>document.querySelector(`[aria-rowindex="${e}"] .k-grid-remove-command`),u=e=>document.querySelector(`[data-keyboardnavid="${e}"]`),p=e=>{var n;const t=e&&e.parentElement&&e.parentElement.closest(".k-table-row");let r;return(n=t==null?void 0:t.parentElement)==null||n.childNodes.forEach(l=>{if(t===l){const o=l.previousSibling;r={current:t.getAttribute("aria-rowindex"),prev:o&&o.getAttribute("aria-rowindex")}}}),r};async function R(e,t,r=5e3){const n=Date.now();if(t)for(;Date.now()-n<r;){const l=t.querySelector(e);if(l)return l;await new Promise(o=>setTimeout(o,20))}return!1}const L=async e=>{const t=e&&e.parentElement&&e.parentElement.closest(".k-grid-edit-row");return await R("."+a.KEYBOARD_NAV_EDIT_BUTTON_CLASS,t)},S=e=>(e==null?void 0:e.closest(".k-table-td"))||null,F=e=>e.querySelector(`[${a.KEYBOARD_NAV_DATA_HEADER}]`),O=e=>e.querySelector(`[${a.KEYBOARD_NAV_DATA_BODY}]`),W=e=>e.querySelector(".k-grid-norecords"),X=e=>{const t=e.querySelector(".k-grid-edit-cell"),r=t&&t.querySelector("input");r?r.focus():t&&t.firstChild.focus()},h=(e,t)=>{const{scope:r,navigationStateRef:n,contextStateRef:l}=e;if(!n.current||!r)return;const o=M(n.current.navigationMatrix),s=v(r,o);C({elementForFocus:s,contextStateRef:l,event:t})},V=(e,t={focusable:!1})=>{const r=t.focusable?g.FOCUSABLE_ELEMENTS:g.TABBABLE_ELEMENTS;return Array.from(e.querySelectorAll(r.join(",")))},$=(e,t={level:0})=>{if(!e)return[];const r=g.FOCUSABLE_ELEMENTS.map(n=>n+`[${a.KEYBOARD_NAV_DATA_LEVEL}='${t.level}']`).join(",");return Array.from(e.querySelectorAll(r))},k=(e={level:0})=>{const t=g.FOCUSABLE_ELEMENTS.map(r=>r+`[${a.KEYBOARD_NAV_DATA_LEVEL}='${e.level}']`).join(",");return r=>r.matches(t)},C=e=>{const{elementForFocus:t,event:r,contextStateRef:n,prevElement:l}=e;if(n.current&&t&&t.focus){r==null||r.preventDefault();const o=t.querySelector(".k-checkbox-wrap .k-checkbox");o&&o.focus?o.focus():t.focus(),A(t)&&(t.setAttribute("tabIndex","0"),n.current.activeId=b(t)),l&&A(l)&&l.setAttribute("tabIndex","-1")}},K=e=>e.current?e.current.idPrefix:"",q=(e,t,r,n,l)=>{if(!r)return[];let o=e+(l?-1:1);for(;o>=0&&o<n.length;){const s=n[o][t];if(s!==r)return[s,[o,t]];o=o+(l?-1:1)}return[]},d=(e,t,r,n,l)=>{if(!r)return[];let o=t+(l?-1:1);for(;o>=0&&n[e]&&o<n[e].length;){const s=n[e][o];if(s!==r)return[s,[e,o]];o=o+(l?-1:1)}return[]},f=(e,t)=>{if(t){for(let r=0;r<e.length;r++)for(let n=0;n<e[r].length;n++)if(e[r][n]===t)return[r,n]}},_=(e,t,r)=>{let n;do if(e=e+1,n=t[r-e],n&&n.editable)break;while(r-e>=0);return n},Y=(e,t,r,n)=>{var I;let l;const[o,s]=e;let c;const i=0,E=t.length;return c=_(i,t,s),c?l=d(o,c.ariaColumnIndex,r,n,!0):(c=_(i,t,E),l=d(o-1,c.ariaColumnIndex,r,n,!0)),{prevCell:l&&l[0]&&u(l[0]),elementToFocus:l&&l[0]&&((I=u(l[0]))==null?void 0:I.getAttribute("role"))}},D=(e,t,r)=>{let n;do if(e=e+1,n=t[r+e],n&&n.editable)break;while(r+e-1<t.length);return n},P=(e,t,r,n)=>{var o;let l;if(e){const[s,c]=e;let i,E=0;i=D(E,t,c),i?l=d(s,i.ariaColumnIndex,r,n,!0):(E=-1,i=D(E,t,0),l=d(s+1,i.ariaColumnIndex,r,n,!0))}return{nextCell:l&&l[0]&&u(l[0]),elementToFocus:l&&l[0]&&((o=u(l[0]))==null?void 0:o.getAttribute("role"))}},U=e=>e.current?e.current.navigationMatrix.length:0,M=e=>e.flat().find(t=>t.endsWith("cell")),z=e=>e.flat().reverse().find(t=>t.endsWith("cell")),G=(e,t)=>e[t][0],J=(e,t)=>Array.from(e[t]).reverse()[0],j=e=>e?`${e}${a.KEYBOARD_NAV_FILTER_COL_SUFFIX}`:"",Q=(e,t,r)=>{let n;if(e.current&&e.current.prevNavigationIndexes){const[l,o]=e.current.prevNavigationIndexes,s=t[l];s&&s[o]===r?n=e.current.prevNavigationIndexes:n=f(t,r)}else n=f(t,r);return n},H=e=>{var t;return((t=N(e))==null?void 0:t.getAttribute("data-keyboardnavid"))||e.getAttribute("data-keyboardnavid")},Z={generateNavigatableId:m,getNavigatableId:b,getNavigatableLevel:B,getNavigatableElement:x,getClosestNavigatableElement:N,getActiveNavDataElement:v,getClosestScope:y,getHeaderElement:F,getBodyElement:O,getFocusableElements:V,getNavigatableElements:$,filterNavigatableElements:k,focusElement:C,getIdPrefix:K,isNavigatable:A,findNextIdByRowIndex:q,findNextIdByCellIndex:d,findId:f,getNextNavigationIndex:U,getFilterColumnId:j,focusFirstDataElement:h,getClosestCancelButton:w,getClosestEditButton:L,getRowAriaRowIndex:p,getRemoveButtonByAriaRowIndex:T,getTableCellByKeyboardNavId:u,getParentCell:S,waitForElementToBeVisible:R,getNextEditableCell:P,getPrevEditableCell:Y,getClosestCellNavId:H};exports.filterNavigatableElements=k;exports.findId=f;exports.findNextIdByCellIndex=d;exports.findNextIdByRowIndex=q;exports.focusElement=C;exports.focusFirstDataElement=h;exports.focusFirstEditor=X;exports.generateNavigatableId=m;exports.getActiveNavDataElement=v;exports.getBodyElement=O;exports.getClosestCancelButton=w;exports.getClosestCellNavId=H;exports.getClosestEditButton=L;exports.getClosestNavigatableElement=N;exports.getClosestScope=y;exports.getCurrentIdIndexes=Q;exports.getFilterColumnId=j;exports.getFirstDataCell=M;exports.getFirstRowDataCell=G;exports.getFocusableElements=V;exports.getHeaderElement=F;exports.getIdPrefix=K;exports.getLastDataCell=z;exports.getLastRowDataCell=J;exports.getNavigatableElement=x;exports.getNavigatableElements=$;exports.getNavigatableId=b;exports.getNavigatableLevel=B;exports.getNextEditableCell=P;exports.getNextNavigationIndex=U;exports.getNoRecordsElement=W;exports.getParentCell=S;exports.getPrevEditableCell=Y;exports.getRemoveButtonByAriaRowIndex=T;exports.getRowAriaRowIndex=p;exports.getTableCellByKeyboardNavId=u;exports.isNavigatable=A;exports.tableKeyboardNavigationTools=Z;
|
package/navigation/utils.mjs
CHANGED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
9
8
|
import { FOCUSABLE_ELEMENTS as b, TABBABLE_ELEMENTS as y } from "@progress/kendo-react-common";
|
|
10
9
|
import { KEYBOARD_NAV_DATA_LEVEL as f, KEYBOARD_NAV_DATA_ID as g, KEYBOARD_NAV_DATA_SCOPE as D, KEYBOARD_NAV_CANCEL_BUTTON_CLASS as w, KEYBOARD_NAV_EDIT_BUTTON_CLASS as B, KEYBOARD_NAV_DATA_HEADER as S, KEYBOARD_NAV_DATA_BODY as h, KEYBOARD_NAV_FILTER_COL_SUFFIX as T } from "./constants.mjs";
|
|
11
10
|
const $ = (e, t, r = "cell") => `${t}_${e}_${r}`, k = (e) => {
|
package/package-metadata.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"@progress/kendo-react-data-tools",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate: 1738310223,version:"9.4.0-develop.10",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"};exports.packageMetadata=e;
|
package/package-metadata.mjs
CHANGED
|
@@ -5,14 +5,13 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
9
8
|
const e = {
|
|
10
9
|
name: "@progress/kendo-react-data-tools",
|
|
11
10
|
productName: "KendoReact",
|
|
12
11
|
productCode: "KENDOUIREACT",
|
|
13
12
|
productCodes: ["KENDOUIREACT"],
|
|
14
|
-
publishDate:
|
|
15
|
-
version: "9.
|
|
13
|
+
publishDate: 1738310223,
|
|
14
|
+
version: "9.4.0-develop.10",
|
|
16
15
|
licensingDocsUrl: "https://www.telerik.com/kendo-react-ui/components/my-license/"
|
|
17
16
|
};
|
|
18
17
|
export {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-react-data-tools",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.4.0-develop.10",
|
|
4
4
|
"description": "Includes React Pager & React Filter component, an intuitive interface to create complex filter descriptions. KendoReact Data Tools package",
|
|
5
5
|
"author": "Progress",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
"@progress/kendo-data-query": "^1.0.0",
|
|
29
29
|
"@progress/kendo-drawing": "^1.21.2",
|
|
30
30
|
"@progress/kendo-licensing": "^1.3.4",
|
|
31
|
-
"@progress/kendo-react-animation": "9.
|
|
32
|
-
"@progress/kendo-react-buttons": "9.
|
|
33
|
-
"@progress/kendo-react-common": "9.
|
|
34
|
-
"@progress/kendo-react-dateinputs": "9.
|
|
35
|
-
"@progress/kendo-react-dropdowns": "9.
|
|
36
|
-
"@progress/kendo-react-inputs": "9.
|
|
37
|
-
"@progress/kendo-react-intl": "9.
|
|
38
|
-
"@progress/kendo-react-popup": "9.
|
|
31
|
+
"@progress/kendo-react-animation": "9.4.0-develop.10",
|
|
32
|
+
"@progress/kendo-react-buttons": "9.4.0-develop.10",
|
|
33
|
+
"@progress/kendo-react-common": "9.4.0-develop.10",
|
|
34
|
+
"@progress/kendo-react-dateinputs": "9.4.0-develop.10",
|
|
35
|
+
"@progress/kendo-react-dropdowns": "9.4.0-develop.10",
|
|
36
|
+
"@progress/kendo-react-inputs": "9.4.0-develop.10",
|
|
37
|
+
"@progress/kendo-react-intl": "9.4.0-develop.10",
|
|
38
|
+
"@progress/kendo-react-popup": "9.4.0-develop.10",
|
|
39
39
|
"@progress/kendo-svg-icons": "^4.0.0",
|
|
40
40
|
"react": "^16.8.2 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc",
|
|
41
41
|
"react-dom": "^16.8.2 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"package": {
|
|
62
62
|
"productName": "KendoReact",
|
|
63
63
|
"productCode": "KENDOUIREACT",
|
|
64
|
-
"publishDate":
|
|
64
|
+
"publishDate": 1738310223,
|
|
65
65
|
"licensingDocsUrl": "https://www.telerik.com/kendo-react-ui/components/my-license/"
|
|
66
66
|
}
|
|
67
67
|
},
|
package/pager/Pager.js
CHANGED
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ke=require("react"),s=require("prop-types"),Ke=require("./PagerNumericButtons.js"),Le=require("./PagerInput.js"),ze=require("./PagerPageSizes.js"),De=require("@progress/kendo-react-buttons"),u=require("../messages/index.js"),Y=require("@progress/kendo-react-intl"),a=require("@progress/kendo-react-common"),qe=require("../package-metadata.js"),n=require("./utils.js");function Oe(o){const M=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const f in o)if(f!=="default"){const v=Object.getOwnPropertyDescriptor(o,f);Object.defineProperty(M,f,v.get?v:{enumerable:!0,get:()=>o[f]})}}return M.default=o,Object.freeze(M)}const i=Oe(ke),Z=600,we=768,B=i.forwardRef((o,M)=>{a.validatePackage(qe.packageMetadata);const{buttonCount:f=C.buttonCount,info:v=C.info,type:ee=C.type,size:m=C.size,disabled:y=C.disabled,total:h,skip:L,take:N,className:te,style:se,pageSizes:T,pageSizeValue:ae,previousNext:ne,responsive:R,messagesMap:l,dir:_,navigatable:b}=o,c=Y.useLocalization(),z=Y.useInternationalization(),P=i.useRef({element:null,props:o}),E=i.useRef(null);i.useImperativeHandle(P,()=>({get element(){return re()},props:o})),i.useImperativeHandle(M,()=>P.current);const re=()=>E.current,[A,D]=i.useState(!0),[oe,j]=i.useState(!0);i.useEffect(()=>(window.addEventListener("resize",q),q(),()=>{window.removeEventListener("resize",q)}),[]);const I=_==="rtl",g=Math.floor(L/N)+1,d=Math.ceil((h||0)/N),p=(t,e)=>{o.onPageChange&&t>0&&t<=d&&o.onPageChange({target:P.current,skip:(t-1)*o.take,take:o.take,syntheticEvent:e,nativeEvent:e.nativeEvent,targetEvent:e})},ie=t=>{const e=E.current,r=t.keyCode;!e||!b||((r===a.Keys.home||t.metaKey&&r===a.Keys.left)&&p(1,t),(r===a.Keys.end||t.metaKey&&r===a.Keys.right)&&p(d,t),document.activeElement===e?(r===a.Keys.enter&&(a.focusFirstFocusableChild(e),a.enableNavigatableContainer(e)),(r===a.Keys.left||r===a.Keys.up)&&p(g-1,t),(r===a.Keys.right||r===a.Keys.down)&&p(g+1,t)):(r===a.Keys.esc&&(e.focus(),a.disableNavigatableContainer(e)),a.keepFocusInContainer(t,e,a.TABBABLE_ELEMENTS)))},q=()=>{const t=E.current;if(!t||!R)return;const e=t.offsetWidth;e<Z?D(!1):e>=Z&&e<we?(j(!1),D(!0)):(j(!0),D(!0))},le=(t,e)=>{const r={target:P==null?void 0:P.current,syntheticEvent:e.syntheticEvent,nativeEvent:e.nativeEvent,targetEvent:e,...t};o.onPageChange&&o.onPageChange(r)},ge=n.getL10NMessage(u.pagerFirstPage,l),ce=n.getL10NMessage(u.pagerPreviousPage,l),ue=n.getL10NMessage(u.pagerNextPage,l),de=n.getL10NMessage(u.pagerLastPage,l),F=n.getL10NMessage(u.pagerInfo,l),$=n.getL10NMessage(u.pagerAriaKeyshortcuts,l),V=n.getL10NMessage(u.pagerPage,l),G=n.getL10NMessage(u.pagerOf,l),S=n.getL10NMessage(u.pagerTotalPages,l),fe=`${c.toLanguageString(V.messageKey,V.defaultMessage)} ${z.format(c.toLanguageString(S.messageKey,S.defaultMessage),[g])} ${c.toLanguageString(G.messageKey,G.defaultMessage)} ${z.format(c.toLanguageString(S.messageKey,S.defaultMessage),[d])}`,k=(t,e,r,O,w,x)=>i.createElement(De.Button,{fillMode:"flat",themeColor:"base",size:m,rounded:null,className:e,icon:O,svgIcon:w,title:r,role:"button","aria-disabled":x,tabIndex:b?-1:void 0,onClick:K=>{K.preventDefault(),p(t,K)}}),H=T&&i.createElement(ze.PagerPageSizes,{pageChange:le,pageSize:N,pageSizes:T,value:ae,messagesMap:l,size:m,navigatable:b}),W=v&&i.createElement("span",{className:"k-pager-info"},z.format(c.toLanguageString(F.messageKey,F.defaultMessage),[Math.min(L+1,h),Math.min(L+N,h),h])),me=ee==="numeric"?i.createElement(Ke.PagerNumericButtons,{type:R&&!A?"dropdown":"numbers",buttonCount:f||0,totalPages:d,currentPage:g,pageChange:p,messagesMap:l,size:m,navigatable:b}):i.createElement(Le.PagerInput,{buttonCount:f||0,totalPages:d,currentPage:g,pageChange:p,messagesMap:l,size:m,navigatable:b});let U,J,Q,X;if(ne){const t=n.translateMessage(c,ge),{rtlClass:e,rtlIcon:r,isDisabledClass:O,isDisabled:w}=n.getFirstButtonProps(I,g,y);U=k(1,O,t,e,r,w);const x=n.translateMessage(c,ce),{rtlClass:K,rtlIcon:pe,isDisabledClass:be,isDisabled:Pe}=n.getPrevButtonProps(I,g,y);J=k(g-1,be,x,K,pe,Pe);const Me=n.translateMessage(c,ue),{rtlClass:ye,rtlIcon:Ce,isDisabledClass:ve,isDisabled:he}=n.getNextButtonProps(I,g,d,y);Q=k(g+1,ve,Me,ye,Ce,he);const Ne=n.translateMessage(c,de),{rtlClass:Re,rtlIcon:Ee,isDisabledClass:Ie,isDisabled:Se}=n.getLastButtonProps(I,g,d,y);X=k(d,Ie,Ne,Re,Ee,Se)}return i.createElement("div",{ref:E,className:a.classNames("k-pager",{[`k-pager-${a.kendoThemeMaps.sizeMap[m]||m}`]:m,"k-disabled":y},te),style:se,role:"application","aria-roledescription":"pager",dir:_,"aria-keyshortcuts":c.toLanguageString($.messageKey,$.defaultMessage),"aria-label":fe,tabIndex:b?0:void 0,onKeyDown:ie},i.createElement("div",{className:a.classNames("k-pager-numbers-wrap")},U,J,me,Q,X),R?A&&H:H,R?oe&&W:W)}),C={buttonCount:10,info:!0,type:"numeric",size:"medium",disabled:!1};B.displayName="Pager";B.propTypes={className:s.string,style:s.object,total:s.number.isRequired,skip:s.number.isRequired,take:s.number.isRequired,buttonCount:s.number,info:s.bool,type:s.oneOf(["numeric","input"]),pageSizes:s.oneOfType([s.arrayOf(s.number.isRequired),s.arrayOf(s.oneOfType([s.number.isRequired,s.string.isRequired]).isRequired)]),previousNext:s.bool,onPageChange:s.func,messagesMap:s.func,size:s.oneOf([null,"small","medium","large"]),dir:s.string,disabled:s.bool};exports.Pager=B;
|
package/pager/PagerInput.js
CHANGED
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),o=require("@progress/kendo-react-intl"),c=require("../messages/index.js"),d=require("@progress/kendo-react-inputs"),a=require("./utils.js");function P(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const g=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,g.get?g:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const s=P(f),p=e=>{const[n,t]=s.useState(e.currentPage),g=l=>{t(l.target.value),l.target.value&&e.pageChange(l.target.value,l)},u=o.useInternationalization(),r=o.useLocalization(),i=a.getL10NMessage(c.pagerPage,e.messagesMap),m=a.getL10NMessage(c.pagerOf,e.messagesMap),M=a.getL10NMessage(c.pagerTotalPages,e.messagesMap),b=a.getL10NMessage(c.pagerPageNumberLabel,e.messagesMap);return s.createElement("span",{className:"k-pager-input"},s.createElement("span",null,a.translateMessage(r,i)),s.createElement(d.NumericTextBox,{value:e.currentPage!==void 0?e.currentPage:n,onChange:g,min:1,spinners:!1,ariaLabel:a.translateMessage(r,b),tabIndex:e.navigatable?-1:void 0}),s.createElement("span",null,`${a.translateMessage(r,m)} ${u.format(a.translateMessage(r,M),[e.totalPages])}`))};exports.PagerInput=p;
|
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const z=require("react"),m=require("@progress/kendo-react-common"),C=require("@progress/kendo-react-buttons"),b=require("../messages/index.js"),R=require("@progress/kendo-react-intl"),c=require("./utils.js");function I(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(s,n,a.get?a:{enumerable:!0,get:()=>t[n]})}}return s.default=t,Object.freeze(s)}const o=I(z),P="...",T=t=>{const s=R.useLocalization(),{messagesMap:n,size:a,totalPages:p,type:k,navigatable:M}=t,N=c.getL10NMessage(b.pagerMobileSelect,n),D=c.getL10NMessage(b.pagerPage,n),O=c.getL10NMessage(b.pagerMoreButtonLabel,n),f=c.translateMessage(s,O),h=(e,u)=>{e.preventDefault(),t.pageChange(u,e)},L=e=>{e.preventDefault(),t.pageChange(e.target.value,e)},v=(e,u)=>o.createElement(C.Button,{fillMode:"flat",themeColor:"primary",size:a,rounded:null,role:"button","aria-label":u,onClick:w=>h(w,e),tabIndex:M?-1:void 0},P),y=e=>o.createElement("option",{value:e},P);let r=1;const l=t.currentPage,d=t.buttonCount;if(l>d){const e=l%d;r=e===0?l-d+1:l-e+1}const i=Math.min(r+t.buttonCount-1,t.totalPages),B=r>1&&v(r-1,f),E=i<p&&v(i+1,f),S=r>1&&y(r-1),q=i<p&&y(i+1),g=[];for(let e=r;e<=i;e++)g.push(e);const x=g.map(e=>o.createElement(C.Button,{className:m.classNames({"k-selected":l===e}),key:e,fillMode:"flat",themeColor:"primary",size:a,rounded:null,role:"button","aria-label":c.translateMessage(s,D)+" "+e,"aria-current":l===e?!0:void 0,onClick:u=>h(u,e),tabIndex:M?-1:void 0},e)),j=g.map(e=>o.createElement("option",{key:e},e));return o.createElement(o.Fragment,null,o.createElement("select",{style:{width:"5em",margin:"0px 1em",display:"inline-flex"},className:m.classNames("k-picker k-dropdown-list k-dropdown k-rounded-md k-picker-solid",{[`k-picker-${m.kendoThemeMaps.sizeMap[a]||a}`]:a,"k-hidden":k!=="dropdown"}),"aria-label":c.translateMessage(s,N),value:l,onChange:e=>L(e)},S,j,q),o.createElement("div",{className:"k-pager-numbers",style:{display:k==="numbers"?"":"none"}},B,x,E))};exports.PagerNumericButtons=T;
|
|
@@ -12,11 +12,11 @@ import { Button as y } from "@progress/kendo-react-buttons";
|
|
|
12
12
|
import { pagerMobileSelect as F, pagerPage as R, pagerMoreButtonLabel as T } from "../messages/index.mjs";
|
|
13
13
|
import { useLocalization as $ } from "@progress/kendo-react-intl";
|
|
14
14
|
import { getL10NMessage as d, translateMessage as g } from "./utils.mjs";
|
|
15
|
-
const P = "...", K = (
|
|
16
|
-
const i = $(), { messagesMap: c, size: r, totalPages: p, type: b, navigatable: k } =
|
|
17
|
-
e.preventDefault(),
|
|
15
|
+
const P = "...", K = (o) => {
|
|
16
|
+
const i = $(), { messagesMap: c, size: r, totalPages: p, type: b, navigatable: k } = o, D = d(F, c), E = d(R, c), N = d(T, c), f = g(i, N), M = (e, l) => {
|
|
17
|
+
e.preventDefault(), o.pageChange(l, e);
|
|
18
18
|
}, x = (e) => {
|
|
19
|
-
e.preventDefault(),
|
|
19
|
+
e.preventDefault(), o.pageChange(e.target.value, e);
|
|
20
20
|
}, h = (e, l) => /* @__PURE__ */ t.createElement(
|
|
21
21
|
y,
|
|
22
22
|
{
|
|
@@ -31,14 +31,14 @@ const P = "...", K = (n) => {
|
|
|
31
31
|
},
|
|
32
32
|
P
|
|
33
33
|
), v = (e) => /* @__PURE__ */ t.createElement("option", { value: e }, P);
|
|
34
|
-
let
|
|
35
|
-
const a =
|
|
34
|
+
let n = 1;
|
|
35
|
+
const a = o.currentPage, m = o.buttonCount;
|
|
36
36
|
if (a > m) {
|
|
37
37
|
const e = a % m;
|
|
38
|
-
|
|
38
|
+
n = e === 0 ? a - m + 1 : a - e + 1;
|
|
39
39
|
}
|
|
40
|
-
const s = Math.min(
|
|
41
|
-
for (let e =
|
|
40
|
+
const s = Math.min(n + o.buttonCount - 1, o.totalPages), L = n > 1 && h(n - 1, f), w = s < p && h(s + 1, f), z = n > 1 && v(n - 1), B = s < p && v(s + 1), u = [];
|
|
41
|
+
for (let e = n; e <= s; e++)
|
|
42
42
|
u.push(e);
|
|
43
43
|
const O = u.map((e) => /* @__PURE__ */ t.createElement(
|
|
44
44
|
y,
|
package/pager/PagerPageSizes.js
CHANGED
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),z=require("@progress/kendo-react-intl"),l=require("../messages/index.js"),P=require("@progress/kendo-react-dropdowns"),r=require("./utils.js");function S(e){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(a,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return a.default=e,Object.freeze(a)}const o=S(m),v=e=>{const{value:a,pageSizes:t,pageSize:n,messagesMap:c,size:u,navigatable:p}=e,i=t.slice(),g=z.useLocalization();a===void 0&&i.filter(s=>s===n).length===0&&i.unshift(n);const d=r.getL10NMessage(l.pagerItemPerPage,c),f=r.getL10NMessage(l.pagerPageSizeAriaLabel,c),b=s=>{e.pageChange&&e.pageChange({skip:0,take:parseInt(s.target.value,10)},s)};return o.createElement("span",{className:"k-pager-sizes"},o.createElement(P.DropDownList,{value:a!==void 0?a:n,data:i,onChange:b,ariaLabel:r.translateMessage(g,f),size:u,tabIndex:p?-1:void 0}),o.createElement("span",null,r.translateMessage(g,d)))};exports.PagerPageSizes=v;
|
package/pager/PagerPageSizes.mjs
CHANGED
|
@@ -12,7 +12,7 @@ import { pagerItemPerPage as P, pagerPageSizeAriaLabel as h } from "../messages/
|
|
|
12
12
|
import { DropDownList as S } from "@progress/kendo-react-dropdowns";
|
|
13
13
|
import { getL10NMessage as r, translateMessage as l } from "./utils.mjs";
|
|
14
14
|
const C = (a) => {
|
|
15
|
-
const { value: t, pageSizes:
|
|
15
|
+
const { value: t, pageSizes: m, pageSize: s, messagesMap: g, size: p, navigatable: c } = a, i = m.slice(), o = v();
|
|
16
16
|
t === void 0 && i.filter((e) => e === s).length === 0 && i.unshift(s);
|
|
17
17
|
const z = r(P, g), f = r(h, g), u = (e) => {
|
|
18
18
|
a.pageChange && a.pageChange({ skip: 0, take: parseInt(e.target.value, 10) }, e);
|
|
@@ -24,8 +24,8 @@ const C = (a) => {
|
|
|
24
24
|
data: i,
|
|
25
25
|
onChange: u,
|
|
26
26
|
ariaLabel: l(o, f),
|
|
27
|
-
size:
|
|
28
|
-
tabIndex:
|
|
27
|
+
size: p,
|
|
28
|
+
tabIndex: c ? -1 : void 0
|
|
29
29
|
}
|
|
30
30
|
), /* @__PURE__ */ n.createElement("span", null, l(o, z)));
|
|
31
31
|
};
|
package/pager/utils.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("@progress/kendo-svg-icons"),i=require("../messages/index.js"),g=(t,s)=>s?s(t):{messageKey:t,defaultMessage:i.messages[t]},d=(t,s)=>t.toLanguageString(s.messageKey,s.defaultMessage),u=(t,s,e)=>{const o=t?"caret-alt-to-right":"caret-alt-to-left",r=t?a.caretAltToRightIcon:a.caretAltToLeftIcon,n="k-pager-nav k-pager-first"+(s===1&&!e?" k-disabled":"");return{rtlClass:o,rtlIcon:r,isDisabledClass:n,isDisabled:s===1?!0:void 0}},b=(t,s,e)=>{const o=t?"caret-alt-right":"caret-alt-left",r=t?a.caretAltRightIcon:a.caretAltLeftIcon,n="k-pager-nav"+(s===1&&!e?" k-disabled":"");return{rtlClass:o,rtlIcon:r,isDisabledClass:n,isDisabled:s===1?!0:void 0}},p=(t,s,e,o)=>{const r=t?"caret-alt-left":"caret-alt-right",n=t?a.caretAltLeftIcon:a.caretAltRightIcon,c="k-pager-nav"+(s>=e&&!o?" k-disabled":""),l=s>=e?!0:void 0;return{rtlClass:r,rtlIcon:n,isDisabledClass:c,isDisabled:l}},f=(t,s,e,o)=>{const r=t?"caret-alt-to-left":"caret-alt-to-right",n=t?a.caretAltToLeftIcon:a.caretAltToRightIcon,c="k-pager-nav k-pager-last"+(s>=e&&!o?" k-disabled":""),l=s>=e?!0:void 0;return{rtlClass:r,rtlIcon:n,isDisabledClass:c,isDisabled:l}};exports.getFirstButtonProps=u;exports.getL10NMessage=g;exports.getLastButtonProps=f;exports.getNextButtonProps=p;exports.getPrevButtonProps=b;exports.translateMessage=d;
|
package/pager/utils.mjs
CHANGED
|
@@ -5,10 +5,9 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
9
8
|
import { caretAltToRightIcon as c, caretAltToLeftIcon as i, caretAltRightIcon as d, caretAltLeftIcon as g } from "@progress/kendo-svg-icons";
|
|
10
|
-
import { messages as
|
|
11
|
-
const f = (t, s) => s ? s(t) : { messageKey: t, defaultMessage:
|
|
9
|
+
import { messages as b } from "../messages/index.mjs";
|
|
10
|
+
const f = (t, s) => s ? s(t) : { messageKey: t, defaultMessage: b[t] }, D = (t, s) => t.toLanguageString(s.messageKey, s.defaultMessage), m = (t, s, e) => {
|
|
12
11
|
const a = t ? "caret-alt-to-right" : "caret-alt-to-left", o = t ? c : i, r = "k-pager-nav k-pager-first" + (s === 1 && !e ? " k-disabled" : "");
|
|
13
12
|
return { rtlClass: a, rtlIcon: o, isDisabledClass: r, isDisabled: s === 1 ? !0 : void 0 };
|
|
14
13
|
}, v = (t, s, e) => {
|
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const V=require("react"),W=require("react-dom"),j=require("@progress/kendo-react-common"),t=require("./utils.js");function F(l){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(l){for(const a in l)if(a!=="default"){const g=Object.getOwnPropertyDescriptor(l,a);Object.defineProperty(s,a,g.get?g:{enumerable:!0,get:()=>l[a]})}}return s.default=l,Object.freeze(s)}const n=F(V),Z=F(W),$=l=>{var C;const{onRelease:s,childRef:a}=l,{enabled:g,drag:I,mode:i,cell:T}=t.getSelectionOptions(l.selectable),o=n.useRef(null),X=n.useRef(null),y=n.useRef({clientX:0,clientY:0,scrollX:0,scrollY:0,pressedElement:null}),[K,R]=n.useState(null),M=n.useRef(),b=n.useRef(!1),v=n.useRef(!1),_=n.useCallback(u=>{const{event:e}=u;if(v.current=t.isInNonSelectable(e.originalEvent.target),v.current||!o.current)return;M.current=t.relativeContextElement(o.current.element);const r=o.current.element&&o.current.element.ownerDocument;if(!r)return;const c=r.elementFromPoint(e.clientX,e.clientY);y.current={clientY:e.clientY,clientX:e.clientX,scrollX:e.scrollX,scrollY:e.scrollY,pressedElement:c}},[]),H=n.useCallback(u=>{const{event:e}=u,{clientX:r,clientY:c}=y.current;if(!v.current&&!(!I||i==="single")&&((Math.abs(c-e.clientY)>5||Math.abs(r-e.clientX)>5)&&(b.current=!0),b.current)){const E=t.getOffset(M.current);R({top:Math.min(c,e.clientY)-E.top,left:Math.min(r,e.clientX)-E.left,width:Math.abs(e.clientX-r),height:Math.abs(e.clientY-c)})}},[R,I,i]),z=n.useCallback(u=>{const{event:e}=u,{clientX:r,clientY:c,scrollX:E,scrollY:B,pressedElement:G}=y.current;if(v.current||!o.current)return;const h=o.current.element&&o.current.element.ownerDocument;if(h){if(b.current){const m=e.scrollY-B,D=e.scrollX-E,x=Math.min(c,e.clientY),d=Math.min(r,e.clientX),f=Math.max(c,e.clientY),J=Math.max(r,e.clientX),Y=X.current;if(!Y)return;Y.style.visibility="hidden";const L=h.elementFromPoint(d,x),S=m>0||D>0?G:L,w=h.elementFromPoint(J,f);if(Y.style.visibility="",!S||!w)return;const P=t.closestTagName(S,"TD"),Q=t.closestTagName(P,"TR"),p=t.closestTagName(w,"TD"),U=t.closestTagName(p,"TR"),O=t.getColumnIndex(P),N=t.getRowIndex(Q),k=t.getColumnIndex(p),q=t.getRowIndex(U);O!==void 0&&N!==void 0&&k!==void 0&&q!==void 0&&s({nativeEvent:e.originalEvent,startRowIndex:N,startColIndex:O,endRowIndex:q,endColIndex:k,altKey:e.altKey,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,mode:i,cell:T,isDrag:!0})}else{const m=h.elementFromPoint(r,c);if(!m)return;const D=t.closestTagName(m,"TD"),x=t.closestTagName(m,"TR"),d=t.getColumnIndex(D),f=t.getRowIndex(x);D&&x&&f!==void 0&&d!==void 0&&s({nativeEvent:e.originalEvent,startRowIndex:f,startColIndex:d,endRowIndex:f,endColIndex:d,altKey:e.altKey,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,mode:i,cell:T,isDrag:!1})}R(null),b.current=!1,y.current={clientX:0,clientY:0,scrollX:0,scrollY:0,pressedElement:null}}},[R,i,T,s]),A=j.useDocument(X);return g?n.createElement(n.Fragment,null,n.createElement(j.Draggable,{onPress:_,onDrag:H,onRelease:z,ref:o,childRef:a},l.children),K&&Z.createPortal(n.createElement("div",{ref:X,style:{...K,position:"fixed"},className:"k-marquee k-marquee-color"}),(C=A())==null?void 0:C.body)):n.cloneElement(n.Children.only(l.children),{ref:a})};exports.TableSelection=$;
|
package/selection/constants.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E="data-grid-row-index",T="data-grid-col-index",_="data-prevent-selection";exports.TABLE_COL_INDEX_ATTRIBUTE=T;exports.TABLE_PREVENT_SELECTION_ELEMENT=_;exports.TABLE_ROW_INDEX_ATTRIBUTE=E;
|
package/selection/constants.mjs
CHANGED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
9
8
|
const E = "data-grid-row-index", T = "data-grid-col-index", t = "data-prevent-selection";
|
|
10
9
|
export {
|
|
11
10
|
T as TABLE_COL_INDEX_ATTRIBUTE,
|
package/selection/utils.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("@progress/kendo-react-common"),R=require("./constants.js"),M="items",x={},F=(e,t)=>!e||Array.isArray(e)&&e.length===0?[t]:e.findIndex(d=>d===t)>-1?e.filter(d=>d!==t):[...e,t],j=e=>{let t=e;for(;t;){if(t.hasAttribute(R.TABLE_PREVENT_SELECTION_ELEMENT))return!0;t=t.parentElement}return!1},h=(e,t)=>{let o=e;for(;o;){if(o.tagName===t)return o;if(o.tagName==="TABLE")return null;o=o.parentElement}return null},N=e=>{if(!e)return;const t=e.getAttribute(R.TABLE_ROW_INDEX_ATTRIBUTE);return t?parseInt(t,10):void 0},L=e=>{if(!e)return;const t=e.getAttribute(R.TABLE_COL_INDEX_ATTRIBUTE);return t?parseInt(t,10):void 0},b=e=>{const t=e.subItemsField||M,o=s.getter(e.dataItemKey);return s.mapTree(e.data,t,d=>s.extendDataItem(d,t,{[e.selectedField]:e.selectedState[o(d)]}))},G=e=>{const{event:t,dataItemKey:o,selectedState:d}=e,{syntheticEvent:i,nativeEvent:n,dataItems:I,componentId:l,mode:f,cell:E,selectedField:T}=t,{target:S,ctrlKey:p,metaKey:w,altKey:u,shiftKey:K}=n;if(i.isDefaultPrevented()&&!K||n.keyCode!==s.Keys.space&&n.keyCode!==s.Keys.enter&&n.keyCode!==s.Keys.right&&n.keyCode!==s.Keys.left&&n.keyCode!==s.Keys.up&&n.keyCode!==s.Keys.down)return d;i.preventDefault();const v=h(S,"TD"),g=h(S,"TR");let r=L(v),m=N(g),a={};return v&&g&&m!==void 0&&r!==void 0&&(n.keyCode===s.Keys.right&&r++,n.keyCode===s.Keys.left&&r--,n.keyCode===s.Keys.down&&m++,n.keyCode===s.Keys.up&&m--,a=O({selectedState:d,dataItemKey:o,event:{ctrlKey:p,metaKey:w,altKey:u,shiftKey:K,dataItems:I,cell:E,mode:f,selectedField:T,componentId:l,startColIndex:r,endColIndex:r,startRowIndex:m,endRowIndex:m,isDrag:!1,syntheticEvent:i,nativeEvent:n,target:t.target,dataItem:null}})),a},O=e=>{const{event:t,dataItemKey:o,selectedState:d}=e,{dataItems:i,startRowIndex:n,endRowIndex:I,startColIndex:l,endColIndex:f,cell:E,isDrag:T,ctrlKey:S,shiftKey:p,metaKey:w,componentId:u,mode:K,dataItem:v}=t,g=s.getter(o);let r={};const m=v!==null;if(K==="single"){const a=i.slice(n,n+1)[0],y=g(a);x[u]={rowIndex:n,colIndex:l},y!==void 0&&(r[y]=E?[l]:!0)}else if(T||!p&&!S&&!w&&!m){T||(x[u]={rowIndex:n,colIndex:l});const a=[];for(let c=l;c<=f;c++)a.push(c);i.slice(n,I+1).forEach(c=>{const D=g(c);D!==void 0&&(r[D]=E?[...a]:!0)})}else if(S||w||m){x[u]={rowIndex:n,colIndex:l};const y=i.slice(n,I+1)[0],c=g(y);c!==void 0&&(r={...d},r[c]=E&&!m?F(r[c],l):!r[c])}else if(p){const a=x[u]&&x[u].rowIndex||0,y=x[u]&&x[u].colIndex||0,c=Math.min(a,n,I),D=Math.max(a,n,I),k=Math.min(y,l,f),B=Math.max(y,l,f),A=[];for(let C=k;C<=B;C++)A.push(C);i.slice(c,D+1).forEach(C=>{const _=g(C);_!==void 0&&(r[_]=E?[...A]:!0)})}return r},U=s.hasRelativeStackingContext(),X=e=>{if(!e||!U)return null;let t=e.parentElement;for(;t;){if(window.getComputedStyle(t).transform!=="none")return t;t=t.parentElement}},q=e=>{if(e&&e.ownerDocument&&e!==e.ownerDocument.body){const t=e.getBoundingClientRect();return{left:t.left-e.scrollLeft,top:t.top-e.scrollTop}}return{left:0,top:0}},V=e=>{var n,I,l,f;const t=typeof e=="object"?(n=e.enabled)!=null?n:!0:e!=null?e:!1,o=typeof e=="object"&&(I=e.drag)!=null?I:!1,d=typeof e=="object"&&(l=e.mode)!=null?l:"multiple",i=typeof e=="object"&&(f=e.cell)!=null?f:!1;return{enabled:t,drag:o,mode:d,cell:i}};exports.closestTagName=h;exports.getColumnIndex=L;exports.getOffset=q;exports.getRowIndex=N;exports.getSelectedState=O;exports.getSelectedStateFromKeyDown=G;exports.getSelectionOptions=V;exports.isInNonSelectable=j;exports.relativeContextElement=X;exports.setSelectedState=b;
|
package/selection/utils.mjs
CHANGED
|
@@ -5,10 +5,9 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
const U = "items", x = {}, X = (e, t) => !e || Array.isArray(e) && e.length === 0 ? [t] : e.findIndex((d) => d === t) > -1 ? e.filter((d) => d !== t) : [...e, t], J = (e) => {
|
|
8
|
+
import { getter as K, mapTree as k, extendDataItem as O, Keys as i, hasRelativeStackingContext as B } from "@progress/kendo-react-common";
|
|
9
|
+
import { TABLE_PREVENT_SELECTION_ELEMENT as M, TABLE_ROW_INDEX_ATTRIBUTE as F, TABLE_COL_INDEX_ATTRIBUTE as j } from "./constants.mjs";
|
|
10
|
+
const G = "items", y = {}, U = (e, t) => !e || Array.isArray(e) && e.length === 0 ? [t] : e.findIndex((d) => d === t) > -1 ? e.filter((d) => d !== t) : [...e, t], J = (e) => {
|
|
12
11
|
let t = e;
|
|
13
12
|
for (; t; ) {
|
|
14
13
|
if (t.hasAttribute(M))
|
|
@@ -16,7 +15,7 @@ const U = "items", x = {}, X = (e, t) => !e || Array.isArray(e) && e.length ===
|
|
|
16
15
|
t = t.parentElement;
|
|
17
16
|
}
|
|
18
17
|
return !1;
|
|
19
|
-
},
|
|
18
|
+
}, _ = (e, t) => {
|
|
20
19
|
let o = e;
|
|
21
20
|
for (; o; ) {
|
|
22
21
|
if (o.tagName === t)
|
|
@@ -26,7 +25,7 @@ const U = "items", x = {}, X = (e, t) => !e || Array.isArray(e) && e.length ===
|
|
|
26
25
|
o = o.parentElement;
|
|
27
26
|
}
|
|
28
27
|
return null;
|
|
29
|
-
},
|
|
28
|
+
}, X = (e) => {
|
|
30
29
|
if (!e)
|
|
31
30
|
return;
|
|
32
31
|
const t = e.getAttribute(F);
|
|
@@ -34,103 +33,103 @@ const U = "items", x = {}, X = (e, t) => !e || Array.isArray(e) && e.length ===
|
|
|
34
33
|
}, V = (e) => {
|
|
35
34
|
if (!e)
|
|
36
35
|
return;
|
|
37
|
-
const t = e.getAttribute(
|
|
36
|
+
const t = e.getAttribute(j);
|
|
38
37
|
return t ? parseInt(t, 10) : void 0;
|
|
39
38
|
}, Q = (e) => {
|
|
40
|
-
const t = e.subItemsField ||
|
|
39
|
+
const t = e.subItemsField || G, o = K(e.dataItemKey);
|
|
41
40
|
return k(
|
|
42
41
|
e.data,
|
|
43
42
|
t,
|
|
44
|
-
(d) =>
|
|
43
|
+
(d) => O(d, t, {
|
|
45
44
|
[e.selectedField]: e.selectedState[o(d)]
|
|
46
45
|
})
|
|
47
46
|
);
|
|
48
47
|
}, Y = (e) => {
|
|
49
|
-
const { event: t, dataItemKey: o, selectedState: d } = e, { syntheticEvent: a, nativeEvent: n, dataItems:
|
|
50
|
-
if (a.isDefaultPrevented() && !
|
|
48
|
+
const { event: t, dataItemKey: o, selectedState: d } = e, { syntheticEvent: a, nativeEvent: n, dataItems: I, componentId: s, mode: f, cell: g, selectedField: p } = t, { target: T, ctrlKey: w, metaKey: S, altKey: u, shiftKey: v } = n;
|
|
49
|
+
if (a.isDefaultPrevented() && !v || n.keyCode !== i.space && n.keyCode !== i.enter && n.keyCode !== i.right && n.keyCode !== i.left && n.keyCode !== i.up && n.keyCode !== i.down)
|
|
51
50
|
return d;
|
|
52
51
|
a.preventDefault();
|
|
53
|
-
const
|
|
54
|
-
let r = V(
|
|
55
|
-
return
|
|
52
|
+
const h = _(T, "TD"), E = _(T, "TR");
|
|
53
|
+
let r = V(h), m = X(E), l = {};
|
|
54
|
+
return h && E && m !== void 0 && r !== void 0 && (n.keyCode === i.right && r++, n.keyCode === i.left && r--, n.keyCode === i.down && m++, n.keyCode === i.up && m--, l = b({
|
|
56
55
|
selectedState: d,
|
|
57
56
|
dataItemKey: o,
|
|
58
57
|
event: {
|
|
59
58
|
ctrlKey: w,
|
|
60
59
|
metaKey: S,
|
|
61
|
-
altKey:
|
|
62
|
-
shiftKey:
|
|
63
|
-
dataItems:
|
|
60
|
+
altKey: u,
|
|
61
|
+
shiftKey: v,
|
|
62
|
+
dataItems: I,
|
|
64
63
|
cell: g,
|
|
65
|
-
mode:
|
|
64
|
+
mode: f,
|
|
66
65
|
selectedField: p,
|
|
67
|
-
componentId:
|
|
66
|
+
componentId: s,
|
|
68
67
|
startColIndex: r,
|
|
69
68
|
endColIndex: r,
|
|
70
|
-
startRowIndex:
|
|
71
|
-
endRowIndex:
|
|
69
|
+
startRowIndex: m,
|
|
70
|
+
endRowIndex: m,
|
|
72
71
|
isDrag: !1,
|
|
73
72
|
syntheticEvent: a,
|
|
74
73
|
nativeEvent: n,
|
|
75
74
|
target: t.target,
|
|
76
75
|
dataItem: null
|
|
77
76
|
}
|
|
78
|
-
})),
|
|
79
|
-
},
|
|
77
|
+
})), l;
|
|
78
|
+
}, b = (e) => {
|
|
80
79
|
const { event: t, dataItemKey: o, selectedState: d } = e, {
|
|
81
80
|
dataItems: a,
|
|
82
81
|
startRowIndex: n,
|
|
83
|
-
endRowIndex:
|
|
84
|
-
startColIndex:
|
|
85
|
-
endColIndex:
|
|
82
|
+
endRowIndex: I,
|
|
83
|
+
startColIndex: s,
|
|
84
|
+
endColIndex: f,
|
|
86
85
|
cell: g,
|
|
87
86
|
isDrag: p,
|
|
88
|
-
ctrlKey:
|
|
87
|
+
ctrlKey: T,
|
|
89
88
|
shiftKey: w,
|
|
90
89
|
metaKey: S,
|
|
91
|
-
componentId:
|
|
92
|
-
mode:
|
|
93
|
-
dataItem:
|
|
94
|
-
} = t,
|
|
90
|
+
componentId: u,
|
|
91
|
+
mode: v,
|
|
92
|
+
dataItem: h
|
|
93
|
+
} = t, E = K(o);
|
|
95
94
|
let r = {};
|
|
96
|
-
const
|
|
97
|
-
if (
|
|
98
|
-
const
|
|
99
|
-
|
|
95
|
+
const m = h !== null;
|
|
96
|
+
if (v === "single") {
|
|
97
|
+
const l = a.slice(n, n + 1)[0], x = E(l);
|
|
98
|
+
y[u] = {
|
|
100
99
|
rowIndex: n,
|
|
101
|
-
colIndex:
|
|
102
|
-
}, r[
|
|
103
|
-
} else if (p || !w && !
|
|
104
|
-
p || (
|
|
100
|
+
colIndex: s
|
|
101
|
+
}, x !== void 0 && (r[x] = g ? [s] : !0);
|
|
102
|
+
} else if (p || !w && !T && !S && !m) {
|
|
103
|
+
p || (y[u] = {
|
|
105
104
|
rowIndex: n,
|
|
106
|
-
colIndex:
|
|
105
|
+
colIndex: s
|
|
107
106
|
});
|
|
108
|
-
const
|
|
109
|
-
for (let
|
|
110
|
-
|
|
111
|
-
a.slice(n,
|
|
112
|
-
const
|
|
113
|
-
r[
|
|
107
|
+
const l = [];
|
|
108
|
+
for (let c = s; c <= f; c++)
|
|
109
|
+
l.push(c);
|
|
110
|
+
a.slice(n, I + 1).forEach((c) => {
|
|
111
|
+
const D = E(c);
|
|
112
|
+
D !== void 0 && (r[D] = g ? [...l] : !0);
|
|
114
113
|
});
|
|
115
|
-
} else if (
|
|
116
|
-
|
|
114
|
+
} else if (T || S || m) {
|
|
115
|
+
y[u] = {
|
|
117
116
|
rowIndex: n,
|
|
118
|
-
colIndex:
|
|
117
|
+
colIndex: s
|
|
119
118
|
};
|
|
120
|
-
const
|
|
121
|
-
r = { ...d }, r[
|
|
119
|
+
const x = a.slice(n, I + 1)[0], c = E(x);
|
|
120
|
+
c !== void 0 && (r = { ...d }, r[c] = g && !m ? U(r[c], s) : !r[c]);
|
|
122
121
|
} else if (w) {
|
|
123
|
-
const
|
|
124
|
-
for (let
|
|
125
|
-
|
|
126
|
-
a.slice(
|
|
127
|
-
const
|
|
128
|
-
r[
|
|
122
|
+
const l = y[u] && y[u].rowIndex || 0, x = y[u] && y[u].colIndex || 0, c = Math.min(l, n, I), D = Math.max(l, n, I), L = Math.min(x, s, f), N = Math.max(x, s, f), R = [];
|
|
123
|
+
for (let C = L; C <= N; C++)
|
|
124
|
+
R.push(C);
|
|
125
|
+
a.slice(c, D + 1).forEach((C) => {
|
|
126
|
+
const A = E(C);
|
|
127
|
+
A !== void 0 && (r[A] = g ? [...R] : !0);
|
|
129
128
|
});
|
|
130
129
|
}
|
|
131
130
|
return r;
|
|
132
|
-
},
|
|
133
|
-
if (!e || !
|
|
131
|
+
}, H = B(), Z = (e) => {
|
|
132
|
+
if (!e || !H)
|
|
134
133
|
return null;
|
|
135
134
|
let t = e.parentElement;
|
|
136
135
|
for (; t; ) {
|
|
@@ -148,15 +147,16 @@ const U = "items", x = {}, X = (e, t) => !e || Array.isArray(e) && e.length ===
|
|
|
148
147
|
}
|
|
149
148
|
return { left: 0, top: 0 };
|
|
150
149
|
}, P = (e) => {
|
|
151
|
-
|
|
150
|
+
var n, I, s, f;
|
|
151
|
+
const t = typeof e == "object" ? (n = e.enabled) != null ? n : !0 : e != null ? e : !1, o = typeof e == "object" && (I = e.drag) != null ? I : !1, d = typeof e == "object" && (s = e.mode) != null ? s : "multiple", a = typeof e == "object" && (f = e.cell) != null ? f : !1;
|
|
152
152
|
return { enabled: t, drag: o, mode: d, cell: a };
|
|
153
153
|
};
|
|
154
154
|
export {
|
|
155
|
-
|
|
155
|
+
_ as closestTagName,
|
|
156
156
|
V as getColumnIndex,
|
|
157
157
|
$ as getOffset,
|
|
158
|
-
|
|
159
|
-
|
|
158
|
+
X as getRowIndex,
|
|
159
|
+
b as getSelectedState,
|
|
160
160
|
Y as getSelectedStateFromKeyDown,
|
|
161
161
|
P as getSelectionOptions,
|
|
162
162
|
J as isInNonSelectable,
|
package/utils/data-operations.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("@progress/kendo-data-query"),f=require("@progress/kendo-react-common");function u(t,e,n){return n?{...t,[e]:n.length?[...n]:void 0}:t&&t[e]?[...t[e]]:[]}function s(t,e,n){if(t[n]){const r=u(t,n,v.orderBy(u(t,n),e)),o=u(r,n).map(c=>s(c,e,n));return{...r,[n]:o}}return t}function S(t,e,n){let r=v.orderBy(t,e);return r=r.map(o=>s(o,e,n)),r}function y(t,e,n){let r=u(t,n);if(r&&r.length){r=r.map(l=>y(l,e,n));const c={filters:[{filters:e,logic:"and"},{operator:l=>!!(l[n]||[]).length}],logic:"or"},a=v.filterBy(r,c);return u(t,n,a)}return t}function D(t,e,n){let r={[n]:[...t]};return r=y(r,e,n),r[n]||[]}function T(t,e,n){const r=[],o=[];for(let c=t.length-1;c>=0;c--){const a=t[c];r.push({root:a,data:e(a),level:[c],levelCount:t.length})}for(;r.length>0;){const c=r.pop();if(o.push({dataItem:c.root,level:[...c.level],...n(c.root),levelCount:c.levelCount}),c.data.length)for(let a=c.data.length-1;a>=0;a--){const l=c.data[a];r.push({root:l,data:e(l),level:[...c.level,a],levelCount:c.data.length})}}return o}const B=(t,e,n)=>{const r=h=>!!f.getNestedValue(e,h),o=h=>!!f.getNestedValue(n,h),c=h=>{const i=[];return r(h)&&o(h)&&i.push(...f.getNestedValue(n,h)),i},a=(h,i,g)=>{i.push({...h,level:g}),c(h).forEach(C=>a(C,i,g+1))},l=[];return t.forEach(h=>a(h,l,0)),l},P=(t,e,n,r)=>{let o={},c=[],a;return t.forEach(l=>o[e(l)]={...l}),t.forEach(l=>{a=o[n(l)],a?(a[r]=a[r]||[],a[r].push(o[e(l)])):c.push(o[e(l)])}),c},x=(t,e,n)=>f.extendDataItem(t,e,n),k=(t,e,n)=>[...f.mapTree([{[e]:[...t]}],e,o=>w(o,n,e))[0][e]],w=(t,e,n)=>{const r=t[n]||[],o=r.findIndex(e);if(o!==-1){const c=[...r];return c.splice(o,1),{...t,[n]:c}}return t},E=(t,e,n,r)=>f.mapTree(t,e,o=>n(o)?{...o,[e]:r(o[e]||[])}:o),p=(t,e,n)=>f.getItemPath(t,e,n),N=(t,e,n,r)=>{const o=[...t],c=p(o,e,r),a=c.pop(),l=c.pop(),h=e[e.length-1];if(n){const g=p(o,n,r).pop();(l?l[r]:o).splice(h,1),g[r]=g[r]||[],g[r].push(a)}else(l?l[r]:o).splice(h,1),o.push(a);return o},V=(t,e)=>({...t,filters:t.filters.map(n=>({...n,value:e}))}),q=t=>t!=null&&t.filters.length&&t.filters[0].value||"",d=(t,e)=>{if(e&&!t)return e;if(t&&!e)return t;if(t&&e)return{logic:"and",filters:[t,e]}};exports.combineFilters=d;exports.createDataTree=P;exports.extendDataItem=x;exports.filterBy=D;exports.flatData=T;exports.getItemPath=p;exports.getSearchFromString=V;exports.getStringFromSearch=q;exports.modifySubItems=E;exports.moveTreeItem=N;exports.orderBy=S;exports.removeItems=k;exports.treeToFlat=B;
|