Merge branch 'master' into tordev
This commit is contained in:
		
						commit
						40ff3a83f4
					
				@ -173,7 +173,7 @@ function tag (walletDef) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function useWalletLogs (wallet, initialPage = 1, logsPerPage = 10) {
 | 
			
		||||
  const [logs, setLogs] = useState([])
 | 
			
		||||
  const [logs, _setLogs] = useState([])
 | 
			
		||||
  const [page, setPage] = useState(initialPage)
 | 
			
		||||
  const [hasMore, setHasMore] = useState(true)
 | 
			
		||||
  const [total, setTotal] = useState(0)
 | 
			
		||||
@ -183,6 +183,14 @@ export function useWalletLogs (wallet, initialPage = 1, logsPerPage = 10) {
 | 
			
		||||
  const { getPage, error, notSupported } = useWalletLogDB()
 | 
			
		||||
  const [getWalletLogs] = useLazyQuery(WALLET_LOGS, SSR ? {} : { fetchPolicy: 'cache-and-network' })
 | 
			
		||||
 | 
			
		||||
  const setLogs = useCallback((action) => {
 | 
			
		||||
    _setLogs(action)
 | 
			
		||||
    // action can be a React state dispatch function
 | 
			
		||||
    const newLogs = typeof action === 'function' ? action(logs) : action
 | 
			
		||||
    // make sure 'more' button is removed if logs were deleted
 | 
			
		||||
    if (newLogs.length === 0) setHasMore(false)
 | 
			
		||||
  }, [logs, _setLogs, setHasMore])
 | 
			
		||||
 | 
			
		||||
  const loadLogsPage = useCallback(async (page, pageSize, walletDef) => {
 | 
			
		||||
    try {
 | 
			
		||||
      let result = { data: [], hasMore: false }
 | 
			
		||||
@ -193,14 +201,14 @@ export function useWalletLogs (wallet, initialPage = 1, logsPerPage = 10) {
 | 
			
		||||
        const query = walletDef ? window.IDBKeyRange.bound([tag(walletDef), -Infinity], [tag(walletDef), Infinity]) : null
 | 
			
		||||
 | 
			
		||||
        result = await getPage(page, pageSize, indexName, query, 'prev')
 | 
			
		||||
        // no walletType means we're using the local IDB
 | 
			
		||||
        if (!walletDef?.walletType) {
 | 
			
		||||
        // if given wallet has no walletType it means logs are only stored in local IDB
 | 
			
		||||
        if (walletDef && !walletDef.walletType) {
 | 
			
		||||
          return result
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      const { data } = await getWalletLogs({
 | 
			
		||||
        variables: {
 | 
			
		||||
          type: walletDef.walletType,
 | 
			
		||||
          type: walletDef?.walletType,
 | 
			
		||||
          // if it client logs has more, page based on it's range
 | 
			
		||||
          from: result?.data[result.data.length - 1]?.ts && result.hasMore ? String(result.data[result.data.length - 1].ts) : null,
 | 
			
		||||
          // if we have a cursor (this isn't the first page), page based on it's range
 | 
			
		||||
 | 
			
		||||
@ -20,11 +20,10 @@ export default function Wallet ({ ssrData }) {
 | 
			
		||||
  const reorder = useCallback(async (sourceIndex, targetIndex) => {
 | 
			
		||||
    const newOrder = [...wallets.filter(w => w.config?.enabled)]
 | 
			
		||||
    const [source] = newOrder.splice(sourceIndex, 1)
 | 
			
		||||
    const newTargetIndex = sourceIndex < targetIndex ? targetIndex - 1 : targetIndex
 | 
			
		||||
 | 
			
		||||
    const priorities = newOrder.slice(0, newTargetIndex)
 | 
			
		||||
    const priorities = newOrder.slice(0, targetIndex)
 | 
			
		||||
      .concat(source)
 | 
			
		||||
      .concat(newOrder.slice(newTargetIndex))
 | 
			
		||||
      .concat(newOrder.slice(targetIndex))
 | 
			
		||||
      .map((w, i) => ({ wallet: w, priority: i }))
 | 
			
		||||
 | 
			
		||||
    await setPriorities(priorities)
 | 
			
		||||
 | 
			
		||||
@ -16,7 +16,7 @@ export const fields = [
 | 
			
		||||
      .matches(/^blink_[A-Za-z0-9]+$/, { message: 'must match pattern blink_A-Za-z0-9' }),
 | 
			
		||||
    help: `you can get an API key from [Blink Dashboard](${galoyBlinkDashboardUrl}).\nPlease make sure to select ONLY the 'Read' and 'Write' scopes when generating this API key.`,
 | 
			
		||||
    optional: 'for sending',
 | 
			
		||||
    requiredWithout: ['apiKeyRecv']
 | 
			
		||||
    requiredWithout: 'apiKeyRecv'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    name: 'currency',
 | 
			
		||||
@ -40,7 +40,7 @@ export const fields = [
 | 
			
		||||
    placeholder: 'blink_...',
 | 
			
		||||
    optional: 'for receiving',
 | 
			
		||||
    serverOnly: true,
 | 
			
		||||
    requiredWithout: ['apiKey'],
 | 
			
		||||
    requiredWithout: 'apiKey',
 | 
			
		||||
    validate: string()
 | 
			
		||||
      .matches(/^blink_[A-Za-z0-9]+$/, { message: 'must match pattern blink_A-Za-z0-9' })
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user