types.ts
1 import { gql } from 'graphql-request'; 2 import { PROJECT_AVATAR_FRAGMENT } from '../project-avatar/project-avatar.svelte'; 3 import { PROJECT_BADGE_FRAGMENT } from '../project-badge/project-badge.svelte'; 4 import type { 5 SplitsComponentAddressReceiverFragment, 6 SplitsComponentDripListReceiverFragment, 7 SplitsComponentProjectReceiverFragment, 8 SplitsComponentEcosystemReceiverFragment, 9 SplitsComponentSubListReceiverFragment, 10 SplitsComponentOrcidReceiverFragment, 11 } from './__generated__/gql.generated'; 12 import { DRIP_LIST_BADGE_FRAGMENT } from '../drip-list-badge/drip-list-badge.svelte'; 13 14 export const SPLITS_COMPONENT_PROJECT_FRAGMENT = gql` 15 ${PROJECT_BADGE_FRAGMENT} 16 fragment SplitsComponentProject on Project { 17 ...ProjectBadge 18 source { 19 repoName 20 ownerName 21 } 22 isVisible 23 chainData { 24 ... on ClaimedProjectData { 25 chain 26 owner { 27 address 28 } 29 color 30 } 31 } 32 } 33 `; 34 35 export const SPLITS_COMPONENT_DRIP_LIST_FRAGMENT = gql` 36 ${DRIP_LIST_BADGE_FRAGMENT} 37 fragment SplitsComponentDripList on DripList { 38 ...DripListBadge 39 account { 40 accountId 41 } 42 isVisible 43 name 44 owner { 45 address 46 } 47 } 48 `; 49 50 export const SPLITS_COMPONENT_PROJECT_RECEIVER_FRAGMENT = gql` 51 ${SPLITS_COMPONENT_PROJECT_FRAGMENT} 52 fragment SplitsComponentProjectReceiver on ProjectReceiver { 53 weight 54 project { 55 ...SplitsComponentProject 56 } 57 } 58 `; 59 60 export const SPLITS_COMPONENT_DRIP_LIST_RECEIVER_FRAGMENT = gql` 61 ${SPLITS_COMPONENT_DRIP_LIST_FRAGMENT} 62 fragment SplitsComponentDripListReceiver on DripListReceiver { 63 weight 64 dripList { 65 chain 66 ...SplitsComponentDripList 67 } 68 } 69 `; 70 71 export const SPLITS_COMPONENT_ADDRESS_RECEIVER_FRAGMENT = gql` 72 fragment SplitsComponentAddressReceiver on AddressReceiver { 73 weight 74 account { 75 address 76 } 77 } 78 `; 79 80 export const SPLITS_COMPONENT_ECOSYSTEM_RECEIVER_FRAGMENT = gql` 81 fragment SplitsComponentEcosystemReceiver on EcosystemMainAccountReceiver { 82 weight 83 ecosystemMainAccount { 84 account { 85 accountId 86 } 87 } 88 } 89 `; 90 91 export const SPLITS_COMPONENT_SUB_LIST_RECEIVER_FRAGMENT = gql` 92 fragment SplitsComponentSubListReceiver on SubListReceiver { 93 weight 94 subList { 95 account { 96 accountId 97 } 98 } 99 } 100 `; 101 102 export const SPLITS_COMPONENT_ORCID_RECEIVER_FRAGMENT = gql` 103 fragment SplitsComponentOrcidReceiver on LinkedIdentityReceiver { 104 weight 105 linkedIdentity { 106 ... on OrcidLinkedIdentity { 107 chain 108 isClaimed 109 areSplitsValid 110 account { 111 accountId 112 } 113 orcid 114 orcidMetadata { 115 givenName 116 familyName 117 } 118 } 119 } 120 } 121 `; 122 123 export const SPLITS_COMPONENT_PROJECT_SPLITS_FRAGMENT = gql` 124 ${PROJECT_AVATAR_FRAGMENT} 125 ${SPLITS_COMPONENT_PROJECT_RECEIVER_FRAGMENT} 126 ${SPLITS_COMPONENT_DRIP_LIST_RECEIVER_FRAGMENT} 127 ${SPLITS_COMPONENT_ADDRESS_RECEIVER_FRAGMENT} 128 ${SPLITS_COMPONENT_ECOSYSTEM_RECEIVER_FRAGMENT} 129 ${SPLITS_COMPONENT_SUB_LIST_RECEIVER_FRAGMENT} 130 ${SPLITS_COMPONENT_ORCID_RECEIVER_FRAGMENT} 131 fragment SplitsComponentProjectSplits on ProjectData { 132 ... on ClaimedProjectData { 133 splits { 134 dependencies { 135 ... on AddressReceiver { 136 ...SplitsComponentAddressReceiver 137 } 138 ... on ProjectReceiver { 139 ...SplitsComponentProjectReceiver 140 } 141 ... on DripListReceiver { 142 ...SplitsComponentDripListReceiver 143 } 144 ... on EcosystemMainAccountReceiver { 145 ...SplitsComponentEcosystemReceiver 146 } 147 ... on SubListReceiver { 148 ...SplitsComponentSubListReceiver 149 } 150 ... on LinkedIdentityReceiver { 151 ...SplitsComponentOrcidReceiver 152 } 153 } 154 maintainers { 155 ... on AddressReceiver { 156 ...SplitsComponentAddressReceiver 157 } 158 } 159 } 160 } 161 } 162 `; 163 164 export type SplitsComponentSplitsReceiver = 165 | SplitsComponentAddressReceiverFragment 166 | SplitsComponentDripListReceiverFragment 167 | SplitsComponentProjectReceiverFragment 168 | SplitsComponentEcosystemReceiverFragment 169 | SplitsComponentSubListReceiverFragment 170 | SplitsComponentOrcidReceiverFragment; 171 172 export type Splits = (SplitGroup | SplitsComponentSplitsReceiver)[]; 173 174 export interface SplitGroup { 175 __typename: 'SplitGroup'; 176 list: Splits; 177 name?: string; 178 }