dify/web/context/datasets-context.tsx
yyh f05d43d26f
feat(web): migrate from es-toolkit/compat to native es-toolkit (#30244)
Migrate 172 files from es-toolkit/compat to native es-toolkit.

Migrated:
- noop → es-toolkit/function
- cloneDeep, omit, clone, pick → es-toolkit/object
- uniq, intersection → es-toolkit/array
- capitalize, camelCase, kebabCase, escape → es-toolkit/string
- isEqual → es-toolkit/predicate

Kept in compat (API differences):
- uniqueId, isEmpty
- get, merge, flow, curry, debounce - different APIs
- uniqBy, groupBy, intersectionBy - property string support
- flatten - undefined handling

Benefits: 2-3x faster, smaller bundle

Part of #30243
Fixes #30244
2025-12-27 20:31:22 +08:00

22 lines
525 B
TypeScript

'use client'
import type { DataSet } from '@/models/datasets'
import { noop } from 'es-toolkit/function'
import { createContext, useContext } from 'use-context-selector'
export type DatasetsContextValue = {
datasets: DataSet[]
mutateDatasets: () => void
currentDataset?: DataSet
}
const DatasetsContext = createContext<DatasetsContextValue>({
datasets: [],
mutateDatasets: noop,
currentDataset: undefined,
})
export const useDatasetsContext = () => useContext(DatasetsContext)
export default DatasetsContext