UNPKG

@progress/kendo-react-data-tools

Version:

Includes React Pager & React Filter component, an intuitive interface to create complex filter descriptions. KendoReact Data Tools package

44 lines (43 loc) 2.13 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { clone as _ } from "@progress/kendo-react-common"; var d = /* @__PURE__ */ ((E) => (E.ENTER_EDIT = "EDITING_ENTER_EDIT", E.ENTER_FIELD_EDIT = "EDITING_ENTER_FIELD_EDIT", E.ADD_EDIT = "EDITING_ADD_EDIT", E.ADD_FIELD_EDIT = "EDITING_ADD_FIELD_EDIT", E.EXIT_EDIT = "EDITING_EXIT_EDIT", E.EXIT_FIELD_EDIT = "EDITING_EXIT_FIELD_EDIT", E.TOGGLE_EDIT = "EDITING_TOGGLE_EDIT", E.TOGGLE_FIELD_EDIT = "EDITING_TOGGLE_FIELD_EDIT", E))(d || {}); const T = (E = {}, I) => { switch (I.type) { case "EDITING_ENTER_EDIT": return { [I.payload.id]: !0 }; case "EDITING_ENTER_FIELD_EDIT": return { [I.payload.id]: [I.payload.field] }; case "EDITING_ADD_EDIT": return { ...E, [I.payload.id]: !0 }; case "EDITING_ADD_FIELD_EDIT": return { ...E, [I.payload.id]: Array.isArray(E[I.payload.id]) ? [...E[I.payload.id], I.payload.field] : [I.payload.field] }; case "EDITING_EXIT_EDIT": { const D = _(E); return delete D[I.payload.id], D; } case "EDITING_EXIT_FIELD_EDIT": return { ...E, [I.payload.id]: Array.isArray(E[I.payload.id]) ? E[I.payload.id].filter((D) => D !== I.payload.field) : [] }; case "EDITING_TOGGLE_EDIT": return Object.keys(E).includes(I.payload.id) && E[I.payload.id] ? T(E, { type: "EDITING_EXIT_EDIT", payload: I.payload }) : T(E, { type: "EDITING_ENTER_EDIT", payload: I.payload }); case "EDITING_TOGGLE_FIELD_EDIT": return Object.keys(E).includes(I.payload.id) && Array.isArray(E[I.payload.id]) ? T(E, { type: "EDITING_EXIT_FIELD_EDIT", payload: I.payload }) : T(E, { type: "EDITING_ENTER_FIELD_EDIT", payload: I.payload }); default: return E; } }; export { d as EDIT_ACTION, T as editReducer };