@lightsparkdev/lightspark-sdk 0.1.6

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.
Files changed (223) hide show
  1. package/.fossa.yml +6 -0
  2. package/.prettierrc +1 -0
  3. package/.turbo/turbo-build.log +19 -0
  4. package/.turbo/turbo-lint.log +3 -0
  5. package/CHANGELOG.md +49 -0
  6. package/LICENSE +201 -0
  7. package/README.md +137 -0
  8. package/dist/Withdrawal-17e1c8af.d.ts +1672 -0
  9. package/dist/Withdrawal-27a4d10d.d.ts +1672 -0
  10. package/dist/chunk-3VRI7CHE.js +5508 -0
  11. package/dist/chunk-AGEUDR2V.js +4498 -0
  12. package/dist/chunk-N27QHRE4.js +5508 -0
  13. package/dist/client-3bba3f64.d.ts +1302 -0
  14. package/dist/index.cjs +6633 -0
  15. package/dist/index.d.ts +15 -0
  16. package/dist/index.js +1177 -0
  17. package/dist/objects/index.cjs +5347 -0
  18. package/dist/objects/index.d.ts +3 -0
  19. package/dist/objects/index.js +88 -0
  20. package/examples/node-scripts/authHelpers.ts +20 -0
  21. package/examples/node-scripts/createInvoice.ts +64 -0
  22. package/examples/node-scripts/example.ts +288 -0
  23. package/examples/node-scripts/getAccountDashboard.ts +24 -0
  24. package/examples/node-scripts/getNodeChannels.ts +34 -0
  25. package/examples/node-scripts/internalAuthHelpers.ts +26 -0
  26. package/examples/node-scripts/internal_example.ts +296 -0
  27. package/examples/node-scripts/package-lock.json +887 -0
  28. package/examples/node-scripts/package.json +22 -0
  29. package/examples/node-scripts/prettyPrintJsonForDocs.ts +62 -0
  30. package/examples/node-scripts/tsconfig.json +27 -0
  31. package/examples/oauth-example/README.md +19 -0
  32. package/examples/oauth-example/package-lock.json +16071 -0
  33. package/examples/oauth-example/package.json +50 -0
  34. package/examples/oauth-example/public/favicon.ico +0 -0
  35. package/examples/oauth-example/public/index.html +43 -0
  36. package/examples/oauth-example/public/logo192.png +0 -0
  37. package/examples/oauth-example/public/logo512.png +0 -0
  38. package/examples/oauth-example/public/manifest.json +25 -0
  39. package/examples/oauth-example/public/robots.txt +3 -0
  40. package/examples/oauth-example/src/App.css +7 -0
  41. package/examples/oauth-example/src/App.test.tsx +12 -0
  42. package/examples/oauth-example/src/App.tsx +16 -0
  43. package/examples/oauth-example/src/auth/AuthContext.ts +8 -0
  44. package/examples/oauth-example/src/auth/AuthProvider.tsx +44 -0
  45. package/examples/oauth-example/src/auth/RequireAuth.tsx +19 -0
  46. package/examples/oauth-example/src/auth/oauthProvider.ts +35 -0
  47. package/examples/oauth-example/src/components/Button.tsx +39 -0
  48. package/examples/oauth-example/src/components/CurrencyAmount.tsx +117 -0
  49. package/examples/oauth-example/src/components/Dashboard.tsx +158 -0
  50. package/examples/oauth-example/src/components/Table.tsx +22 -0
  51. package/examples/oauth-example/src/hooks/useAccountInfo.tsx +31 -0
  52. package/examples/oauth-example/src/icons/BitcoinB.tsx +20 -0
  53. package/examples/oauth-example/src/icons/Icon.tsx +121 -0
  54. package/examples/oauth-example/src/icons/Satoshi.tsx +28 -0
  55. package/examples/oauth-example/src/index.css +13 -0
  56. package/examples/oauth-example/src/index.tsx +23 -0
  57. package/examples/oauth-example/src/lightsparkclient/LightsparkClientContext.ts +10 -0
  58. package/examples/oauth-example/src/lightsparkclient/LightsparkClientProvider.tsx +53 -0
  59. package/examples/oauth-example/src/logo.svg +1 -0
  60. package/examples/oauth-example/src/pages/DashboardPage.tsx +71 -0
  61. package/examples/oauth-example/src/pages/LoginPage.tsx +63 -0
  62. package/examples/oauth-example/src/react-app-env.d.ts +1 -0
  63. package/examples/oauth-example/src/reportWebVitals.ts +15 -0
  64. package/examples/oauth-example/src/routes/index.tsx +15 -0
  65. package/examples/oauth-example/src/setupTests.ts +5 -0
  66. package/examples/oauth-example/src/utils/currency.ts +483 -0
  67. package/examples/oauth-example/tsconfig.json +20 -0
  68. package/examples/streaming-wallet-extension/.fossa.yml +6 -0
  69. package/examples/streaming-wallet-extension/README.md +17 -0
  70. package/examples/streaming-wallet-extension/craco.config.js +58 -0
  71. package/examples/streaming-wallet-extension/package-lock.json +18260 -0
  72. package/examples/streaming-wallet-extension/package.json +77 -0
  73. package/examples/streaming-wallet-extension/public/index.html +24 -0
  74. package/examples/streaming-wallet-extension/public/lightspark_full.png +0 -0
  75. package/examples/streaming-wallet-extension/public/lightspark_icon_circle.png +0 -0
  76. package/examples/streaming-wallet-extension/public/manifest.json +43 -0
  77. package/examples/streaming-wallet-extension/public/robots.txt +3 -0
  78. package/examples/streaming-wallet-extension/src/App.css +53 -0
  79. package/examples/streaming-wallet-extension/src/App.tsx +425 -0
  80. package/examples/streaming-wallet-extension/src/auth/AccountStorage.ts +28 -0
  81. package/examples/streaming-wallet-extension/src/auth/DemoAccountProvider.ts +99 -0
  82. package/examples/streaming-wallet-extension/src/auth/StreamingDemoCredentials.ts +10 -0
  83. package/examples/streaming-wallet-extension/src/background/PaymentStrategy.ts +36 -0
  84. package/examples/streaming-wallet-extension/src/background/PlaybackRange.ts +31 -0
  85. package/examples/streaming-wallet-extension/src/background/StreamingInvoiceHolder.ts +33 -0
  86. package/examples/streaming-wallet-extension/src/background/TransactionObserver.ts +66 -0
  87. package/examples/streaming-wallet-extension/src/background/VideoPlaybackRanges.ts +38 -0
  88. package/examples/streaming-wallet-extension/src/background/VideoProgressCache.ts +87 -0
  89. package/examples/streaming-wallet-extension/src/background/background.ts +145 -0
  90. package/examples/streaming-wallet-extension/src/background/messageHandling.ts +185 -0
  91. package/examples/streaming-wallet-extension/src/common/datetimes.ts +28 -0
  92. package/examples/streaming-wallet-extension/src/common/settings.ts +12 -0
  93. package/examples/streaming-wallet-extension/src/common/storage.ts +8 -0
  94. package/examples/streaming-wallet-extension/src/common/streamingTabs.ts +27 -0
  95. package/examples/streaming-wallet-extension/src/common/types.tsx +23 -0
  96. package/examples/streaming-wallet-extension/src/components/CirclePlusIcon.tsx +19 -0
  97. package/examples/streaming-wallet-extension/src/components/CurrencyAmount.tsx +110 -0
  98. package/examples/streaming-wallet-extension/src/components/CurrencyAmountRaw.tsx +195 -0
  99. package/examples/streaming-wallet-extension/src/components/LeftArrow.tsx +21 -0
  100. package/examples/streaming-wallet-extension/src/components/Loading.tsx +151 -0
  101. package/examples/streaming-wallet-extension/src/components/StreamingTransactionChip.tsx +95 -0
  102. package/examples/streaming-wallet-extension/src/components/TransactionRow.tsx +93 -0
  103. package/examples/streaming-wallet-extension/src/contentscript/content.ts +123 -0
  104. package/examples/streaming-wallet-extension/src/contentscript/lightsparkDemoDom.tsx +113 -0
  105. package/examples/streaming-wallet-extension/src/contentscript/videoElementParsers.ts +92 -0
  106. package/examples/streaming-wallet-extension/src/index.css +16 -0
  107. package/examples/streaming-wallet-extension/src/index.tsx +11 -0
  108. package/examples/streaming-wallet-extension/src/lightsparkClientProvider.tsx +26 -0
  109. package/examples/streaming-wallet-extension/src/react-app-env.d.ts +1 -0
  110. package/examples/streaming-wallet-extension/src/types/Messages.ts +17 -0
  111. package/examples/streaming-wallet-extension/tsconfig.json +20 -0
  112. package/package.json +87 -0
  113. package/src/auth/AccountTokenAuthProvider.ts +37 -0
  114. package/src/auth/index.ts +3 -0
  115. package/src/client.ts +759 -0
  116. package/src/graphql/BitcoinFeeEstimate.ts +13 -0
  117. package/src/graphql/CreateApiToken.ts +22 -0
  118. package/src/graphql/CreateInvoice.ts +18 -0
  119. package/src/graphql/CreateNodeWalletAddress.ts +13 -0
  120. package/src/graphql/CurrentAccount.ts +13 -0
  121. package/src/graphql/DecodeInvoice.ts +16 -0
  122. package/src/graphql/DeleteApiToken.ts +13 -0
  123. package/src/graphql/FundNode.ts +18 -0
  124. package/src/graphql/LightningFeeEstimateForInvoice.ts +21 -0
  125. package/src/graphql/LightningFeeEstimateForNode.ts +21 -0
  126. package/src/graphql/MultiNodeDashboard.ts +118 -0
  127. package/src/graphql/PayInvoice.ts +29 -0
  128. package/src/graphql/RecoverNodeSigningKey.ts +15 -0
  129. package/src/graphql/RequestWithdrawal.ts +25 -0
  130. package/src/graphql/SendPayment.ts +29 -0
  131. package/src/graphql/SingleNodeDashboard.ts +116 -0
  132. package/src/graphql/TransactionSubscription.ts +16 -0
  133. package/src/graphql/TransactionsForNode.ts +42 -0
  134. package/src/index.ts +5 -0
  135. package/src/objects/Account.ts +1222 -0
  136. package/src/objects/AccountToApiTokensConnection.ts +50 -0
  137. package/src/objects/AccountToChannelsConnection.ts +35 -0
  138. package/src/objects/AccountToNodesConnection.ts +62 -0
  139. package/src/objects/AccountToPaymentRequestsConnection.ts +50 -0
  140. package/src/objects/AccountToTransactionsConnection.ts +112 -0
  141. package/src/objects/ApiToken.ts +80 -0
  142. package/src/objects/BitcoinNetwork.ts +19 -0
  143. package/src/objects/BlockchainBalance.ts +102 -0
  144. package/src/objects/Channel.ts +283 -0
  145. package/src/objects/ChannelClosingTransaction.ts +150 -0
  146. package/src/objects/ChannelFees.ts +34 -0
  147. package/src/objects/ChannelOpeningTransaction.ts +150 -0
  148. package/src/objects/ChannelStatus.ts +25 -0
  149. package/src/objects/ChannelToTransactionsConnection.ts +86 -0
  150. package/src/objects/CreateApiTokenInput.ts +22 -0
  151. package/src/objects/CreateApiTokenOutput.ts +41 -0
  152. package/src/objects/CreateInvoiceInput.ts +27 -0
  153. package/src/objects/CreateInvoiceOutput.ts +21 -0
  154. package/src/objects/CreateNodeWalletAddressInput.ts +15 -0
  155. package/src/objects/CreateNodeWalletAddressOutput.ts +27 -0
  156. package/src/objects/CurrencyAmount.ts +55 -0
  157. package/src/objects/CurrencyUnit.ts +25 -0
  158. package/src/objects/DeleteApiTokenInput.ts +13 -0
  159. package/src/objects/DeleteApiTokenOutput.ts +23 -0
  160. package/src/objects/Deposit.ts +144 -0
  161. package/src/objects/Entity.ts +868 -0
  162. package/src/objects/FeeEstimate.ts +39 -0
  163. package/src/objects/FundNodeInput.ts +16 -0
  164. package/src/objects/FundNodeOutput.ts +28 -0
  165. package/src/objects/GraphNode.ts +110 -0
  166. package/src/objects/Hop.ts +108 -0
  167. package/src/objects/HtlcAttemptFailureCode.ts +65 -0
  168. package/src/objects/IncomingPayment.ts +141 -0
  169. package/src/objects/IncomingPaymentAttempt.ts +96 -0
  170. package/src/objects/IncomingPaymentAttemptStatus.ts +20 -0
  171. package/src/objects/IncomingPaymentToAttemptsConnection.ts +39 -0
  172. package/src/objects/Invoice.ts +226 -0
  173. package/src/objects/InvoiceData.ts +185 -0
  174. package/src/objects/InvoiceType.ts +15 -0
  175. package/src/objects/LightningFeeEstimateForInvoiceInput.ts +28 -0
  176. package/src/objects/LightningFeeEstimateForNodeInput.ts +25 -0
  177. package/src/objects/LightningFeeEstimateOutput.ts +33 -0
  178. package/src/objects/LightningTransaction.ts +393 -0
  179. package/src/objects/LightsparkNode.ts +377 -0
  180. package/src/objects/LightsparkNodePurpose.ts +17 -0
  181. package/src/objects/LightsparkNodeStatus.ts +29 -0
  182. package/src/objects/LightsparkNodeToChannelsConnection.ts +50 -0
  183. package/src/objects/Node.ts +273 -0
  184. package/src/objects/NodeAddress.ts +29 -0
  185. package/src/objects/NodeAddressType.ts +18 -0
  186. package/src/objects/NodeToAddressesConnection.ts +39 -0
  187. package/src/objects/OnChainTransaction.ts +318 -0
  188. package/src/objects/OutgoingPayment.ts +319 -0
  189. package/src/objects/OutgoingPaymentAttempt.ts +164 -0
  190. package/src/objects/OutgoingPaymentAttemptStatus.ts +18 -0
  191. package/src/objects/OutgoingPaymentAttemptToHopsConnection.ts +37 -0
  192. package/src/objects/OutgoingPaymentToAttemptsConnection.ts +39 -0
  193. package/src/objects/PageInfo.ts +31 -0
  194. package/src/objects/PayInvoiceInput.ts +33 -0
  195. package/src/objects/PayInvoiceOutput.ts +22 -0
  196. package/src/objects/PaymentFailureReason.ts +29 -0
  197. package/src/objects/PaymentRequest.ts +231 -0
  198. package/src/objects/PaymentRequestData.ts +183 -0
  199. package/src/objects/PaymentRequestStatus.ts +15 -0
  200. package/src/objects/Permission.ts +39 -0
  201. package/src/objects/RequestWithdrawalInput.ts +35 -0
  202. package/src/objects/RequestWithdrawalOutput.ts +24 -0
  203. package/src/objects/RichText.ts +19 -0
  204. package/src/objects/RoutingTransaction.ts +150 -0
  205. package/src/objects/RoutingTransactionFailureReason.ts +17 -0
  206. package/src/objects/Secret.ts +23 -0
  207. package/src/objects/SendPaymentInput.ts +30 -0
  208. package/src/objects/SendPaymentOutput.ts +22 -0
  209. package/src/objects/Transaction.ts +609 -0
  210. package/src/objects/TransactionFailures.ts +23 -0
  211. package/src/objects/TransactionStatus.ts +23 -0
  212. package/src/objects/TransactionType.ts +31 -0
  213. package/src/objects/TransactionUpdate.ts +67 -0
  214. package/src/objects/WalletDashboard.ts +32 -0
  215. package/src/objects/WebhookEventType.ts +15 -0
  216. package/src/objects/Withdrawal.ts +144 -0
  217. package/src/objects/WithdrawalMode.ts +15 -0
  218. package/src/objects/WithdrawalRequest.ts +224 -0
  219. package/src/objects/WithdrawalRequestStatus.ts +17 -0
  220. package/src/objects/WithdrawalRequestToChannelClosingTransactionsConnection.ts +57 -0
  221. package/src/objects/WithdrawalRequestToChannelOpeningTransactionsConnection.ts +57 -0
  222. package/src/objects/index.ts +108 -0
  223. package/tsconfig.json +5 -0
@@ -0,0 +1,393 @@
1
+ // Copyright ©, 2023-present, Lightspark Group, Inc. - All Rights Reserved
2
+
3
+ import { LightsparkException, Query } from "@lightsparkdev/core";
4
+ import CurrencyAmount, { CurrencyAmountFromJson } from "./CurrencyAmount.js";
5
+ import Entity from "./Entity.js";
6
+ import IncomingPayment from "./IncomingPayment.js";
7
+ import OutgoingPayment from "./OutgoingPayment.js";
8
+ import PaymentFailureReason from "./PaymentFailureReason.js";
9
+ import { PaymentRequestDataFromJson } from "./PaymentRequestData.js";
10
+ import { RichTextFromJson } from "./RichText.js";
11
+ import RoutingTransaction from "./RoutingTransaction.js";
12
+ import RoutingTransactionFailureReason from "./RoutingTransactionFailureReason.js";
13
+ import Transaction from "./Transaction.js";
14
+ import TransactionStatus from "./TransactionStatus.js";
15
+
16
+ type LightningTransaction = Transaction &
17
+ Entity & {
18
+ /**
19
+ * The unique identifier of this entity across all Lightspark systems. Should be treated as an opaque
20
+ * string.
21
+ **/
22
+ id: string;
23
+
24
+ /** The date and time when this transaction was initiated. **/
25
+ createdAt: string;
26
+
27
+ /** The date and time when the entity was last updated. **/
28
+ updatedAt: string;
29
+
30
+ /** The current status of this transaction. **/
31
+ status: TransactionStatus;
32
+
33
+ /** The amount of money involved in this transaction. **/
34
+ amount: CurrencyAmount;
35
+
36
+ /** The typename of the object **/
37
+ typename: string;
38
+
39
+ /** The date and time when this transaction was completed or failed. **/
40
+ resolvedAt?: string;
41
+
42
+ /** The hash of this transaction, so it can be uniquely identified on the Lightning Network. **/
43
+ transactionHash?: string;
44
+ };
45
+
46
+ export const LightningTransactionFromJson = (
47
+ obj: any
48
+ ): LightningTransaction => {
49
+ if (obj["__typename"] == "IncomingPayment") {
50
+ return new IncomingPayment(
51
+ obj["incoming_payment_id"],
52
+ obj["incoming_payment_created_at"],
53
+ obj["incoming_payment_updated_at"],
54
+ TransactionStatus[obj["incoming_payment_status"]] ??
55
+ TransactionStatus.FUTURE_VALUE,
56
+ CurrencyAmountFromJson(obj["incoming_payment_amount"]),
57
+ obj["incoming_payment_destination"].id,
58
+ "IncomingPayment",
59
+ obj["incoming_payment_resolved_at"],
60
+ obj["incoming_payment_transaction_hash"],
61
+ obj["incoming_payment_origin"]?.id ?? undefined,
62
+ obj["incoming_payment_payment_request"]?.id ?? undefined
63
+ );
64
+ }
65
+ if (obj["__typename"] == "OutgoingPayment") {
66
+ return new OutgoingPayment(
67
+ obj["outgoing_payment_id"],
68
+ obj["outgoing_payment_created_at"],
69
+ obj["outgoing_payment_updated_at"],
70
+ TransactionStatus[obj["outgoing_payment_status"]] ??
71
+ TransactionStatus.FUTURE_VALUE,
72
+ CurrencyAmountFromJson(obj["outgoing_payment_amount"]),
73
+ obj["outgoing_payment_origin"].id,
74
+ "OutgoingPayment",
75
+ obj["outgoing_payment_resolved_at"],
76
+ obj["outgoing_payment_transaction_hash"],
77
+ obj["outgoing_payment_destination"]?.id ?? undefined,
78
+ !!obj["outgoing_payment_fees"]
79
+ ? CurrencyAmountFromJson(obj["outgoing_payment_fees"])
80
+ : undefined,
81
+ !!obj["outgoing_payment_payment_request_data"]
82
+ ? PaymentRequestDataFromJson(
83
+ obj["outgoing_payment_payment_request_data"]
84
+ )
85
+ : undefined,
86
+ !!obj["outgoing_payment_failure_reason"]
87
+ ? PaymentFailureReason[obj["outgoing_payment_failure_reason"]] ??
88
+ PaymentFailureReason.FUTURE_VALUE
89
+ : null,
90
+ !!obj["outgoing_payment_failure_message"]
91
+ ? RichTextFromJson(obj["outgoing_payment_failure_message"])
92
+ : undefined
93
+ );
94
+ }
95
+ if (obj["__typename"] == "RoutingTransaction") {
96
+ return {
97
+ id: obj["routing_transaction_id"],
98
+ createdAt: obj["routing_transaction_created_at"],
99
+ updatedAt: obj["routing_transaction_updated_at"],
100
+ status:
101
+ TransactionStatus[obj["routing_transaction_status"]] ??
102
+ TransactionStatus.FUTURE_VALUE,
103
+ amount: CurrencyAmountFromJson(obj["routing_transaction_amount"]),
104
+ typename: "RoutingTransaction",
105
+ resolvedAt: obj["routing_transaction_resolved_at"],
106
+ transactionHash: obj["routing_transaction_transaction_hash"],
107
+ incomingChannelId:
108
+ obj["routing_transaction_incoming_channel"]?.id ?? undefined,
109
+ outgoingChannelId:
110
+ obj["routing_transaction_outgoing_channel"]?.id ?? undefined,
111
+ fees: !!obj["routing_transaction_fees"]
112
+ ? CurrencyAmountFromJson(obj["routing_transaction_fees"])
113
+ : undefined,
114
+ failureMessage: !!obj["routing_transaction_failure_message"]
115
+ ? RichTextFromJson(obj["routing_transaction_failure_message"])
116
+ : undefined,
117
+ failureReason: !!obj["routing_transaction_failure_reason"]
118
+ ? RoutingTransactionFailureReason[
119
+ obj["routing_transaction_failure_reason"]
120
+ ] ?? RoutingTransactionFailureReason.FUTURE_VALUE
121
+ : null,
122
+ } as RoutingTransaction;
123
+ }
124
+ throw new LightsparkException(
125
+ "DeserializationError",
126
+ `Couldn't find a concrete type for interface LightningTransaction corresponding to the typename=${obj["__typename"]}`
127
+ );
128
+ };
129
+
130
+ export const FRAGMENT = `
131
+ fragment LightningTransactionFragment on LightningTransaction {
132
+ __typename
133
+ ... on IncomingPayment {
134
+ __typename
135
+ incoming_payment_id: id
136
+ incoming_payment_created_at: created_at
137
+ incoming_payment_updated_at: updated_at
138
+ incoming_payment_status: status
139
+ incoming_payment_resolved_at: resolved_at
140
+ incoming_payment_amount: amount {
141
+ __typename
142
+ currency_amount_original_value: original_value
143
+ currency_amount_original_unit: original_unit
144
+ currency_amount_preferred_currency_unit: preferred_currency_unit
145
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
146
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
147
+ }
148
+ incoming_payment_transaction_hash: transaction_hash
149
+ incoming_payment_origin: origin {
150
+ id
151
+ }
152
+ incoming_payment_destination: destination {
153
+ id
154
+ }
155
+ incoming_payment_payment_request: payment_request {
156
+ id
157
+ }
158
+ }
159
+ ... on OutgoingPayment {
160
+ __typename
161
+ outgoing_payment_id: id
162
+ outgoing_payment_created_at: created_at
163
+ outgoing_payment_updated_at: updated_at
164
+ outgoing_payment_status: status
165
+ outgoing_payment_resolved_at: resolved_at
166
+ outgoing_payment_amount: amount {
167
+ __typename
168
+ currency_amount_original_value: original_value
169
+ currency_amount_original_unit: original_unit
170
+ currency_amount_preferred_currency_unit: preferred_currency_unit
171
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
172
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
173
+ }
174
+ outgoing_payment_transaction_hash: transaction_hash
175
+ outgoing_payment_origin: origin {
176
+ id
177
+ }
178
+ outgoing_payment_destination: destination {
179
+ id
180
+ }
181
+ outgoing_payment_fees: fees {
182
+ __typename
183
+ currency_amount_original_value: original_value
184
+ currency_amount_original_unit: original_unit
185
+ currency_amount_preferred_currency_unit: preferred_currency_unit
186
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
187
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
188
+ }
189
+ outgoing_payment_payment_request_data: payment_request_data {
190
+ __typename
191
+ ... on InvoiceData {
192
+ __typename
193
+ invoice_data_encoded_payment_request: encoded_payment_request
194
+ invoice_data_bitcoin_network: bitcoin_network
195
+ invoice_data_payment_hash: payment_hash
196
+ invoice_data_amount: amount {
197
+ __typename
198
+ currency_amount_original_value: original_value
199
+ currency_amount_original_unit: original_unit
200
+ currency_amount_preferred_currency_unit: preferred_currency_unit
201
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
202
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
203
+ }
204
+ invoice_data_created_at: created_at
205
+ invoice_data_expires_at: expires_at
206
+ invoice_data_destination: destination {
207
+ __typename
208
+ ... on GraphNode {
209
+ __typename
210
+ graph_node_id: id
211
+ graph_node_created_at: created_at
212
+ graph_node_updated_at: updated_at
213
+ graph_node_alias: alias
214
+ graph_node_bitcoin_network: bitcoin_network
215
+ graph_node_color: color
216
+ graph_node_conductivity: conductivity
217
+ graph_node_display_name: display_name
218
+ graph_node_public_key: public_key
219
+ }
220
+ ... on LightsparkNode {
221
+ __typename
222
+ lightspark_node_id: id
223
+ lightspark_node_created_at: created_at
224
+ lightspark_node_updated_at: updated_at
225
+ lightspark_node_alias: alias
226
+ lightspark_node_bitcoin_network: bitcoin_network
227
+ lightspark_node_color: color
228
+ lightspark_node_conductivity: conductivity
229
+ lightspark_node_display_name: display_name
230
+ lightspark_node_public_key: public_key
231
+ lightspark_node_account: account {
232
+ id
233
+ }
234
+ lightspark_node_blockchain_balance: blockchain_balance {
235
+ __typename
236
+ blockchain_balance_total_balance: total_balance {
237
+ __typename
238
+ currency_amount_original_value: original_value
239
+ currency_amount_original_unit: original_unit
240
+ currency_amount_preferred_currency_unit: preferred_currency_unit
241
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
242
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
243
+ }
244
+ blockchain_balance_confirmed_balance: confirmed_balance {
245
+ __typename
246
+ currency_amount_original_value: original_value
247
+ currency_amount_original_unit: original_unit
248
+ currency_amount_preferred_currency_unit: preferred_currency_unit
249
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
250
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
251
+ }
252
+ blockchain_balance_unconfirmed_balance: unconfirmed_balance {
253
+ __typename
254
+ currency_amount_original_value: original_value
255
+ currency_amount_original_unit: original_unit
256
+ currency_amount_preferred_currency_unit: preferred_currency_unit
257
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
258
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
259
+ }
260
+ blockchain_balance_locked_balance: locked_balance {
261
+ __typename
262
+ currency_amount_original_value: original_value
263
+ currency_amount_original_unit: original_unit
264
+ currency_amount_preferred_currency_unit: preferred_currency_unit
265
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
266
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
267
+ }
268
+ blockchain_balance_required_reserve: required_reserve {
269
+ __typename
270
+ currency_amount_original_value: original_value
271
+ currency_amount_original_unit: original_unit
272
+ currency_amount_preferred_currency_unit: preferred_currency_unit
273
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
274
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
275
+ }
276
+ blockchain_balance_available_balance: available_balance {
277
+ __typename
278
+ currency_amount_original_value: original_value
279
+ currency_amount_original_unit: original_unit
280
+ currency_amount_preferred_currency_unit: preferred_currency_unit
281
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
282
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
283
+ }
284
+ }
285
+ lightspark_node_encrypted_signing_private_key: encrypted_signing_private_key {
286
+ __typename
287
+ secret_encrypted_value: encrypted_value
288
+ secret_cipher: cipher
289
+ }
290
+ lightspark_node_total_balance: total_balance {
291
+ __typename
292
+ currency_amount_original_value: original_value
293
+ currency_amount_original_unit: original_unit
294
+ currency_amount_preferred_currency_unit: preferred_currency_unit
295
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
296
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
297
+ }
298
+ lightspark_node_total_local_balance: total_local_balance {
299
+ __typename
300
+ currency_amount_original_value: original_value
301
+ currency_amount_original_unit: original_unit
302
+ currency_amount_preferred_currency_unit: preferred_currency_unit
303
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
304
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
305
+ }
306
+ lightspark_node_local_balance: local_balance {
307
+ __typename
308
+ currency_amount_original_value: original_value
309
+ currency_amount_original_unit: original_unit
310
+ currency_amount_preferred_currency_unit: preferred_currency_unit
311
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
312
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
313
+ }
314
+ lightspark_node_purpose: purpose
315
+ lightspark_node_remote_balance: remote_balance {
316
+ __typename
317
+ currency_amount_original_value: original_value
318
+ currency_amount_original_unit: original_unit
319
+ currency_amount_preferred_currency_unit: preferred_currency_unit
320
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
321
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
322
+ }
323
+ lightspark_node_status: status
324
+ }
325
+ }
326
+ invoice_data_memo: memo
327
+ }
328
+ }
329
+ outgoing_payment_failure_reason: failure_reason
330
+ outgoing_payment_failure_message: failure_message {
331
+ __typename
332
+ rich_text_text: text
333
+ }
334
+ }
335
+ ... on RoutingTransaction {
336
+ __typename
337
+ routing_transaction_id: id
338
+ routing_transaction_created_at: created_at
339
+ routing_transaction_updated_at: updated_at
340
+ routing_transaction_status: status
341
+ routing_transaction_resolved_at: resolved_at
342
+ routing_transaction_amount: amount {
343
+ __typename
344
+ currency_amount_original_value: original_value
345
+ currency_amount_original_unit: original_unit
346
+ currency_amount_preferred_currency_unit: preferred_currency_unit
347
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
348
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
349
+ }
350
+ routing_transaction_transaction_hash: transaction_hash
351
+ routing_transaction_incoming_channel: incoming_channel {
352
+ id
353
+ }
354
+ routing_transaction_outgoing_channel: outgoing_channel {
355
+ id
356
+ }
357
+ routing_transaction_fees: fees {
358
+ __typename
359
+ currency_amount_original_value: original_value
360
+ currency_amount_original_unit: original_unit
361
+ currency_amount_preferred_currency_unit: preferred_currency_unit
362
+ currency_amount_preferred_currency_value_rounded: preferred_currency_value_rounded
363
+ currency_amount_preferred_currency_value_approx: preferred_currency_value_approx
364
+ }
365
+ routing_transaction_failure_message: failure_message {
366
+ __typename
367
+ rich_text_text: text
368
+ }
369
+ routing_transaction_failure_reason: failure_reason
370
+ }
371
+ }`;
372
+
373
+ export const getLightningTransactionQuery = (
374
+ id: string
375
+ ): Query<LightningTransaction> => {
376
+ return {
377
+ queryPayload: `
378
+ query GetLightningTransaction($id: ID!) {
379
+ entity(id: $id) {
380
+ ... on LightningTransaction {
381
+ ...LightningTransactionFragment
382
+ }
383
+ }
384
+ }
385
+
386
+ ${FRAGMENT}
387
+ `,
388
+ variables: { id },
389
+ constructObject: (data: any) => LightningTransactionFromJson(data.entity),
390
+ };
391
+ };
392
+
393
+ export default LightningTransaction;