CoolFace
Apppublic

AK-21/Graphite-Industrial-Intelligence

sourceHugging Faceupdated 3mo agoView on Hugging Face
0likes
traditional.js37 linesDownload Raw Back to zustand
1'use strict';2 3var ReactExports = require('react');4var useSyncExternalStoreExports = require('use-sync-external-store/shim/with-selector');5var vanilla = require('zustand/vanilla');6 7var useDebugValue = ReactExports.useDebugValue;8var useSyncExternalStoreWithSelector = useSyncExternalStoreExports.useSyncExternalStoreWithSelector;9var identity = function identity(arg) {10  return arg;11};12function useStoreWithEqualityFn(api, selector, equalityFn) {13  if (selector === void 0) {14    selector = identity;15  }16  var slice = useSyncExternalStoreWithSelector(api.subscribe, api.getState, api.getServerState || api.getInitialState, selector, equalityFn);17  useDebugValue(slice);18  return slice;19}20var createWithEqualityFnImpl = function createWithEqualityFnImpl(createState, defaultEqualityFn) {21  var api = vanilla.createStore(createState);22  var useBoundStoreWithEqualityFn = function useBoundStoreWithEqualityFn(selector, equalityFn) {23    if (equalityFn === void 0) {24      equalityFn = defaultEqualityFn;25    }26    return useStoreWithEqualityFn(api, selector, equalityFn);27  };28  Object.assign(useBoundStoreWithEqualityFn, api);29  return useBoundStoreWithEqualityFn;30};31var createWithEqualityFn = function createWithEqualityFn(createState, defaultEqualityFn) {32  return createState ? createWithEqualityFnImpl(createState, defaultEqualityFn) : createWithEqualityFnImpl;33};34 35exports.createWithEqualityFn = createWithEqualityFn;36exports.useStoreWithEqualityFn = useStoreWithEqualityFn;37