@matchain/matchid-sdk-react 0.1.54 → 0.1.55-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/icon/index.d.mts +2 -2
- package/dist/assets/icon/index.d.ts +2 -2
- package/dist/{chunk-ZPBHHXEE.mjs → chunk-36M5ROJI.mjs} +6543 -6897
- package/dist/chunk-36M5ROJI.mjs.map +1 -0
- package/dist/chunk-N7NX7Q7M.mjs +97 -0
- package/dist/chunk-N7NX7Q7M.mjs.map +1 -0
- package/dist/components/index.d.mts +3 -3
- package/dist/components/index.d.ts +3 -3
- package/dist/components/index.js +0 -354
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +2 -6
- package/dist/hooks/api/index.d.mts +2 -2
- package/dist/hooks/api/index.d.ts +2 -2
- package/dist/hooks/api/index.js +45 -215
- package/dist/hooks/api/index.js.map +1 -1
- package/dist/hooks/api/index.mjs +6 -6
- package/dist/hooks/index.d.mts +2 -2
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.js +186 -203
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +2 -2
- package/dist/{index-91BdMYDA.d.ts → index-6-oVBXRP.d.mts} +2 -5
- package/dist/{index-CkHDxE7B.d.mts → index-CBQXIlWu.d.mts} +1 -1
- package/dist/{index-ChHJD4NZ.d.mts → index-CMH6Jesl.d.ts} +2 -5
- package/dist/{index-Dj1K-UdZ.d.ts → index-CNH7a3bx.d.ts} +5 -18
- package/dist/{index-CZu_8fKl.d.ts → index-CPPDmmz8.d.ts} +1 -1
- package/dist/{index-DX1vzCrM.d.mts → index-CqKohtvj.d.mts} +1 -1
- package/dist/{index-CPk553v5.d.mts → index-D0Psl8Ue.d.mts} +1 -1
- package/dist/{index-DFBrN7dx.d.ts → index-DbQn4z1l.d.ts} +1 -1
- package/dist/{index-D5geEbXf.d.ts → index-Es7yJi7T.d.ts} +2 -2
- package/dist/{index-DjwwXNp4.d.mts → index-G15A08DI.d.mts} +3 -40
- package/dist/{index-DSvRdAyZ.d.mts → index-MsSYZS38.d.mts} +2 -2
- package/dist/{index-Vxvd14yW.d.ts → index-Y5WRoqzn.d.ts} +3 -40
- package/dist/{index-CPwcm70o.d.mts → index-a_Qt7NXk.d.mts} +5 -18
- package/dist/{index-SRHVQn5G.d.ts → index-agAVLGF5.d.ts} +1 -1
- package/dist/index.css +0 -120
- package/dist/index.d.mts +8 -8
- package/dist/index.d.ts +8 -8
- package/dist/index.js +570 -853
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +7 -5
- package/dist/types/index.d.mts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/{types-Bi9iq57H.d.mts → types-CXzZS0eM.d.mts} +1 -20
- package/dist/{types-Bi9iq57H.d.ts → types-CXzZS0eM.d.ts} +1 -20
- package/dist/ui/index.d.mts +3 -3
- package/dist/ui/index.d.ts +3 -3
- package/dist/ui/index.js +52 -69
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/index.mjs +2 -2
- package/example/src/App.tsx +0 -8
- package/example/src/pages/Wallet/index.tsx +1 -1
- package/package.json +1 -1
- package/dist/chunk-ZPBHHXEE.mjs.map +0 -1
- package/example/src/pages/Contact/index.tsx +0 -90
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import {ContactList,ContactCard} from "@matchain/matchid-sdk-react/components"
|
|
2
|
-
import {Field, Input, Button, Radio} from "@matchain/matchid-sdk-react/ui"
|
|
3
|
-
import {Api,Icon} from "@matchain/matchid-sdk-react"
|
|
4
|
-
import React, {useCallback, useEffect, useState} from "react";
|
|
5
|
-
import {debounce} from "lodash";
|
|
6
|
-
import {useToast} from "@matchain/matchid-sdk-react/hooks";
|
|
7
|
-
|
|
8
|
-
const {contact} = Api
|
|
9
|
-
|
|
10
|
-
function ContactSearch() {
|
|
11
|
-
const [value, setValue] = useState("")
|
|
12
|
-
const [searchValue, setSearchValue] = useState("")
|
|
13
|
-
const [loading,setLoading] = useState(false)
|
|
14
|
-
const [searching,setSearching] = useState(false)
|
|
15
|
-
const toast = useToast()
|
|
16
|
-
const debouncedSetKeyword = useCallback(
|
|
17
|
-
debounce((newKeyword) => {
|
|
18
|
-
setSearchValue(newKeyword);
|
|
19
|
-
}, 1500),
|
|
20
|
-
[]
|
|
21
|
-
);
|
|
22
|
-
|
|
23
|
-
const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {
|
|
24
|
-
setValue(e.target.value);
|
|
25
|
-
debouncedSetKeyword(e.target.value);
|
|
26
|
-
setSearching(true)
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const searchQuery = contact.useContactSearch(searchValue)
|
|
30
|
-
|
|
31
|
-
useEffect(() => {
|
|
32
|
-
if(searchQuery.isFetched){
|
|
33
|
-
setSearching(false)
|
|
34
|
-
}
|
|
35
|
-
}, [searchQuery.isFetched]);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
const onAdd = async()=>{
|
|
39
|
-
if(!searchQuery.data){
|
|
40
|
-
return
|
|
41
|
-
}
|
|
42
|
-
setLoading(true)
|
|
43
|
-
try{
|
|
44
|
-
await contact.addContact(searchQuery.data)
|
|
45
|
-
toast.success("Add Success")
|
|
46
|
-
}catch(error:any){
|
|
47
|
-
toast.success(error.message)
|
|
48
|
-
console.error(error)
|
|
49
|
-
}finally {
|
|
50
|
-
setLoading(false)
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return <div className={`flex gap-4 flex-col`}>
|
|
54
|
-
<Field label={"Search"}>
|
|
55
|
-
<Input placeholder={"Input address or MatchID"} value={value} onChange={onChange}/>
|
|
56
|
-
</Field>
|
|
57
|
-
{(searchQuery.data || searching )&& <div className={"break-all"}>
|
|
58
|
-
<ContactCard loading={searching} data={!searching ?(searchQuery.data||undefined) : undefined}
|
|
59
|
-
action={()=>{
|
|
60
|
-
return searchQuery.data && <Button size="sm" onClick={onAdd} disabled={!searchQuery.data} loading={loading}>Add</Button>
|
|
61
|
-
}}
|
|
62
|
-
/>
|
|
63
|
-
</div>}
|
|
64
|
-
</div>
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export default function Contact() {
|
|
68
|
-
const [contactType, setContactType] = useState<"Friend" | "Requests">("Friend")
|
|
69
|
-
|
|
70
|
-
return <div className={`grid md:grid-cols-2 gap-4`}>
|
|
71
|
-
<div>
|
|
72
|
-
<Field label={"Type"}>
|
|
73
|
-
<div className={`flex gap-4`}>
|
|
74
|
-
<div onClick={() => setContactType("Friend")}
|
|
75
|
-
className={`flex gap-2 items-center cursor-pointer`}>
|
|
76
|
-
<Radio checked={contactType == "Friend"}/>
|
|
77
|
-
Friend
|
|
78
|
-
</div>
|
|
79
|
-
<div onClick={() => setContactType("Requests")}
|
|
80
|
-
className={`flex gap-2 items-center cursor-pointer`}>
|
|
81
|
-
<Radio checked={contactType == "Requests"}/>
|
|
82
|
-
Requests
|
|
83
|
-
</div>
|
|
84
|
-
</div>
|
|
85
|
-
</Field>
|
|
86
|
-
<ContactList type={contactType}/>
|
|
87
|
-
</div>
|
|
88
|
-
<ContactSearch/>
|
|
89
|
-
</div>
|
|
90
|
-
}
|