AK-21/Graphite-Industrial-Intelligence
0
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 