@progress/kendo-react-grid
Version:
React Data Grid (Table) provides 100+ ready-to-use data grid features. KendoReact Grid package
10 lines (9 loc) • 1.61 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
"use client";
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("react");function j(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const e in t)if(e!=="default"){const a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(s,e,a.get?a:{enumerable:!0,get:()=>t[e]})}}return s.default=t,Object.freeze(s)}const r=j(O);function A({selectedView:t,searchHistorySettings:s,semanticSearchHistorySettings:e,aiAssistantHistorySettings:a}){const[n,y]=r.useState([]),[c,f]=r.useState([]),[o,l]=r.useState([]),H=r.useCallback((b,i,u)=>{if(!u||!i.trim())return;const h={text:i,timestamp:new Date,format:u.timestampFormat},d={search:y,semanticSearch:f,aiAssistant:l}[b];d(m=>m.some(M=>M.text===i)?m:[h,...m].slice(0,u.size))},[]),p=r.useMemo(()=>{switch(t){case"search":return n;case"semanticSearch":return c;case"aiAssistant":return o;default:return[]}},[t,n,c,o]),S=r.useMemo(()=>{switch(t){case"search":return s;case"semanticSearch":return e;case"aiAssistant":return a;default:return null}},[t,s,e,a]);return{searchHistory:n,semanticSearchHistory:c,aiAssistantHistory:o,currentHistory:p,currentHistorySettings:S,addToHistory:H}}exports.useSmartBoxHistory=A;