Hex Artifact Content
Not logged in

Artifact 1da3d8d0aac8c17b0e134737d5442cf26ba93cd2:


0000: 69 6d 70 6f 72 74 20 2a 20 61 73 20 74 79 70 65  import * as type
0010: 73 20 66 72 6f 6d 20 27 2e 2e 2f 61 63 74 69 6f  s from '../actio
0020: 6e 54 79 70 65 73 27 0a 0a 65 78 70 6f 72 74 20  nTypes'..export 
0030: 63 6f 6e 73 74 20 6c 6f 61 64 20 3d 20 28 29 20  const load = () 
0040: 3d 3e 20 28 7b 0a 20 20 74 79 70 65 73 3a 20 5b  => ({.  types: [
0050: 74 79 70 65 73 2e 4c 4f 41 44 5f 50 45 45 52 53  types.LOAD_PEERS
0060: 2c 20 74 79 70 65 73 2e 4c 4f 41 44 5f 50 45 45  , types.LOAD_PEE
0070: 52 53 5f 53 55 43 43 45 53 53 2c 20 74 79 70 65  RS_SUCCESS, type
0080: 73 2e 4c 4f 41 44 5f 50 45 45 52 53 5f 46 41 49  s.LOAD_PEERS_FAI
0090: 4c 5d 2c 0a 20 20 70 72 6f 6d 69 73 65 3a 20 63  L],.  promise: c
00a0: 6c 69 65 6e 74 20 3d 3e 20 63 6c 69 65 6e 74 2e  lient => client.
00b0: 67 65 74 28 27 2f 70 65 65 72 73 27 29 0a 7d 29  get('/peers').})
00c0: 0a 0a 65 78 70 6f 72 74 20 63 6f 6e 73 74 20 67  ..export const g
00d0: 65 74 20 3d 20 69 64 20 3d 3e 20 28 7b 0a 20 20  et = id => ({.  
00e0: 74 79 70 65 73 3a 20 5b 74 79 70 65 73 2e 47 45  types: [types.GE
00f0: 54 5f 50 45 45 52 2c 20 74 79 70 65 73 2e 47 45  T_PEER, types.GE
0100: 54 5f 50 45 45 52 5f 53 55 43 43 45 53 53 2c 20  T_PEER_SUCCESS, 
0110: 74 79 70 65 73 2e 47 45 54 5f 50 45 45 52 5f 46  types.GET_PEER_F
0120: 41 49 4c 5d 2c 0a 20 20 70 72 6f 6d 69 73 65 3a  AIL],.  promise:
0130: 20 63 6c 69 65 6e 74 20 3d 3e 20 63 6c 69 65 6e   client => clien
0140: 74 2e 67 65 74 28 60 2f 70 65 65 72 73 2f 24 7b  t.get(`/peers/${
0150: 69 64 7d 60 29 0a 7d 29 0a 0a 65 78 70 6f 72 74  id}`).})..export
0160: 20 63 6f 6e 73 74 20 61 64 64 20 3d 20 64 61 74   const add = dat
0170: 61 20 3d 3e 20 28 7b 0a 20 20 74 79 70 65 73 3a  a => ({.  types:
0180: 20 5b 74 79 70 65 73 2e 41 44 44 5f 50 45 45 52   [types.ADD_PEER
0190: 2c 20 74 79 70 65 73 2e 41 44 44 5f 50 45 45 52  , types.ADD_PEER
01a0: 5f 53 55 43 43 45 53 53 2c 20 74 79 70 65 73 2e  _SUCCESS, types.
01b0: 41 44 44 5f 50 45 45 52 5f 46 41 49 4c 5d 2c 0a  ADD_PEER_FAIL],.
01c0: 20 20 70 72 6f 6d 69 73 65 3a 20 63 6c 69 65 6e    promise: clien
01d0: 74 20 3d 3e 20 63 6c 69 65 6e 74 2e 70 6f 73 74  t => client.post
01e0: 28 27 2f 70 65 65 72 73 27 2c 20 7b 20 64 61 74  ('/peers', { dat
01f0: 61 20 7d 29 0a 7d 29 0a 0a 65 78 70 6f 72 74 20  a }).})..export 
0200: 63 6f 6e 73 74 20 75 70 64 61 74 65 20 3d 20 28  const update = (
0210: 69 64 2c 20 64 61 74 61 29 20 3d 3e 20 28 7b 0a  id, data) => ({.
0220: 20 20 74 79 70 65 73 3a 20 5b 74 79 70 65 73 2e    types: [types.
0230: 55 50 44 41 54 45 5f 50 45 45 52 2c 20 74 79 70  UPDATE_PEER, typ
0240: 65 73 2e 55 50 44 41 54 45 5f 50 45 45 52 5f 53  es.UPDATE_PEER_S
0250: 55 43 43 45 53 53 2c 20 74 79 70 65 73 2e 55 50  UCCESS, types.UP
0260: 44 41 54 45 5f 50 45 45 52 5f 46 41 49 4c 5d 2c  DATE_PEER_FAIL],
0270: 0a 20 20 70 72 6f 6d 69 73 65 3a 20 63 6c 69 65  .  promise: clie
0280: 6e 74 20 3d 3e 20 63 6c 69 65 6e 74 2e 70 75 74  nt => client.put
0290: 28 60 2f 70 65 65 72 73 2f 24 7b 69 64 7d 60 2c  (`/peers/${id}`,
02a0: 20 7b 20 64 61 74 61 20 7d 29 0a 7d 29 0a 0a 65   { data }).})..e
02b0: 78 70 6f 72 74 20 63 6f 6e 73 74 20 72 65 6d 6f  xport const remo
02c0: 76 65 20 3d 20 69 64 20 3d 3e 20 28 7b 0a 20 20  ve = id => ({.  
02d0: 74 79 70 65 73 3a 20 5b 74 79 70 65 73 2e 52 45  types: [types.RE
02e0: 4d 4f 56 45 5f 50 45 45 52 2c 20 74 79 70 65 73  MOVE_PEER, types
02f0: 2e 52 45 4d 4f 56 45 5f 50 45 45 52 5f 53 55 43  .REMOVE_PEER_SUC
0300: 43 45 53 53 2c 20 74 79 70 65 73 2e 52 45 4d 4f  CESS, types.REMO
0310: 56 45 5f 50 45 45 52 5f 46 41 49 4c 5d 2c 0a 20  VE_PEER_FAIL],. 
0320: 20 70 72 6f 6d 69 73 65 3a 20 63 6c 69 65 6e 74   promise: client
0330: 20 3d 3e 20 63 6c 69 65 6e 74 2e 64 65 6c 28 60   => client.del(`
0340: 2f 70 65 65 72 73 2f 24 7b 69 64 7d 60 29 0a 7d  /peers/${id}`).}
0350: 29 0a 0a 65 78 70 6f 72 74 20 63 6f 6e 73 74 20  )..export const 
0360: 67 65 74 53 65 74 74 6c 65 6d 65 6e 74 4d 65 74  getSettlementMet
0370: 68 6f 64 73 20 3d 20 69 64 20 3d 3e 20 28 7b 0a  hods = id => ({.
0380: 20 20 74 79 70 65 73 3a 20 5b 0a 20 20 20 20 74    types: [.    t
0390: 79 70 65 73 2e 4c 4f 41 44 5f 50 45 45 52 5f 53  ypes.LOAD_PEER_S
03a0: 45 54 54 4c 45 4d 45 4e 54 5f 4d 45 54 48 4f 44  ETTLEMENT_METHOD
03b0: 53 2c 0a 20 20 20 20 74 79 70 65 73 2e 4c 4f 41  S,.    types.LOA
03c0: 44 5f 50 45 45 52 5f 53 45 54 54 4c 45 4d 45 4e  D_PEER_SETTLEMEN
03d0: 54 5f 4d 45 54 48 4f 44 53 5f 53 55 43 43 45 53  T_METHODS_SUCCES
03e0: 53 2c 0a 20 20 20 20 74 79 70 65 73 2e 4c 4f 41  S,.    types.LOA
03f0: 44 5f 50 45 45 52 5f 53 45 54 54 4c 45 4d 45 4e  D_PEER_SETTLEMEN
0400: 54 5f 4d 45 54 48 4f 44 53 5f 46 41 49 4c 5d 2c  T_METHODS_FAIL],
0410: 0a 20 20 70 72 6f 6d 69 73 65 3a 20 63 6c 69 65  .  promise: clie
0420: 6e 74 20 3d 3e 20 63 6c 69 65 6e 74 2e 67 65 74  nt => client.get
0430: 28 60 2f 70 65 65 72 73 2f 24 7b 69 64 7d 2f 73  (`/peers/${id}/s
0440: 65 74 74 6c 65 6d 65 6e 74 5f 6d 65 74 68 6f 64  ettlement_method
0450: 73 60 29 0a 7d 29 0a                             s`).}).