adaptic-backend 1.0.150 → 1.0.152

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 (73) hide show
  1. package/Account.cjs +1081 -156
  2. package/Action.cjs +3484 -72
  3. package/Alert.cjs +3824 -72
  4. package/AlpacaAccount.cjs +2936 -144
  5. package/Asset.cjs +3891 -696
  6. package/Authenticator.cjs +1057 -84
  7. package/Customer.cjs +1069 -120
  8. package/EconomicEvent.cjs +28 -84
  9. package/NewsArticle.cjs +956 -192
  10. package/NewsArticleAssetSentiment.cjs +1271 -84
  11. package/Order.cjs +4567 -201
  12. package/Position.cjs +4348 -180
  13. package/Session.cjs +1053 -72
  14. package/StopLoss.cjs +1848 -48
  15. package/TakeProfit.cjs +1848 -48
  16. package/Trade.cjs +5340 -192
  17. package/User.cjs +3159 -168
  18. package/VerificationToken.cjs +16 -48
  19. package/package.json +1 -1
  20. package/server/Account.d.ts.map +1 -1
  21. package/server/Account.js.map +1 -1
  22. package/server/Account.mjs +1081 -156
  23. package/server/Action.d.ts.map +1 -1
  24. package/server/Action.js.map +1 -1
  25. package/server/Action.mjs +3484 -72
  26. package/server/Alert.d.ts.map +1 -1
  27. package/server/Alert.js.map +1 -1
  28. package/server/Alert.mjs +3824 -72
  29. package/server/AlpacaAccount.d.ts.map +1 -1
  30. package/server/AlpacaAccount.js.map +1 -1
  31. package/server/AlpacaAccount.mjs +2936 -144
  32. package/server/Asset.d.ts.map +1 -1
  33. package/server/Asset.js.map +1 -1
  34. package/server/Asset.mjs +3891 -696
  35. package/server/Authenticator.d.ts.map +1 -1
  36. package/server/Authenticator.js.map +1 -1
  37. package/server/Authenticator.mjs +1057 -84
  38. package/server/Customer.d.ts.map +1 -1
  39. package/server/Customer.js.map +1 -1
  40. package/server/Customer.mjs +1069 -120
  41. package/server/EconomicEvent.d.ts.map +1 -1
  42. package/server/EconomicEvent.js.map +1 -1
  43. package/server/EconomicEvent.mjs +28 -84
  44. package/server/NewsArticle.d.ts.map +1 -1
  45. package/server/NewsArticle.js.map +1 -1
  46. package/server/NewsArticle.mjs +956 -192
  47. package/server/NewsArticleAssetSentiment.d.ts.map +1 -1
  48. package/server/NewsArticleAssetSentiment.js.map +1 -1
  49. package/server/NewsArticleAssetSentiment.mjs +1271 -84
  50. package/server/Order.d.ts.map +1 -1
  51. package/server/Order.js.map +1 -1
  52. package/server/Order.mjs +4567 -201
  53. package/server/Position.d.ts.map +1 -1
  54. package/server/Position.js.map +1 -1
  55. package/server/Position.mjs +4348 -180
  56. package/server/Session.d.ts.map +1 -1
  57. package/server/Session.js.map +1 -1
  58. package/server/Session.mjs +1053 -72
  59. package/server/StopLoss.d.ts.map +1 -1
  60. package/server/StopLoss.js.map +1 -1
  61. package/server/StopLoss.mjs +1848 -48
  62. package/server/TakeProfit.d.ts.map +1 -1
  63. package/server/TakeProfit.js.map +1 -1
  64. package/server/TakeProfit.mjs +1848 -48
  65. package/server/Trade.d.ts.map +1 -1
  66. package/server/Trade.js.map +1 -1
  67. package/server/Trade.mjs +5340 -192
  68. package/server/User.d.ts.map +1 -1
  69. package/server/User.js.map +1 -1
  70. package/server/User.mjs +3159 -168
  71. package/server/VerificationToken.d.ts.map +1 -1
  72. package/server/VerificationToken.js.map +1 -1
  73. package/server/VerificationToken.mjs +16 -48
@@ -103,6 +103,104 @@ export const TakeProfit = {
103
103
  maxOrderSize: props.Order.alpacaAccount.maxOrderSize !== undefined ? props.Order.alpacaAccount.maxOrderSize : undefined,
104
104
  minPercentageChange: props.Order.alpacaAccount.minPercentageChange !== undefined ? props.Order.alpacaAccount.minPercentageChange : undefined,
105
105
  volumeThreshold: props.Order.alpacaAccount.volumeThreshold !== undefined ? props.Order.alpacaAccount.volumeThreshold : undefined,
106
+ user: props.Order.alpacaAccount.user ?
107
+ typeof props.Order.alpacaAccount.user === 'object' && Object.keys(props.Order.alpacaAccount.user).length === 1 && Object.keys(props.Order.alpacaAccount.user)[0] === 'id'
108
+ ? { connect: {
109
+ id: props.Order.alpacaAccount.user.id
110
+ }
111
+ }
112
+ : { connectOrCreate: {
113
+ where: {
114
+ id: props.Order.alpacaAccount.user.id !== undefined ? props.Order.alpacaAccount.user.id : undefined,
115
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
116
+ name: props.Order.alpacaAccount.user.name !== undefined ? {
117
+ equals: props.Order.alpacaAccount.user.name
118
+ } : undefined,
119
+ },
120
+ create: {
121
+ name: props.Order.alpacaAccount.user.name !== undefined ? props.Order.alpacaAccount.user.name : undefined,
122
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
123
+ emailVerified: props.Order.alpacaAccount.user.emailVerified !== undefined ? props.Order.alpacaAccount.user.emailVerified : undefined,
124
+ image: props.Order.alpacaAccount.user.image !== undefined ? props.Order.alpacaAccount.user.image : undefined,
125
+ role: props.Order.alpacaAccount.user.role !== undefined ? props.Order.alpacaAccount.user.role : undefined,
126
+ bio: props.Order.alpacaAccount.user.bio !== undefined ? props.Order.alpacaAccount.user.bio : undefined,
127
+ jobTitle: props.Order.alpacaAccount.user.jobTitle !== undefined ? props.Order.alpacaAccount.user.jobTitle : undefined,
128
+ currentAccount: props.Order.alpacaAccount.user.currentAccount !== undefined ? props.Order.alpacaAccount.user.currentAccount : undefined,
129
+ plan: props.Order.alpacaAccount.user.plan !== undefined ? props.Order.alpacaAccount.user.plan : undefined,
130
+ openaiAPIKey: props.Order.alpacaAccount.user.openaiAPIKey !== undefined ? props.Order.alpacaAccount.user.openaiAPIKey : undefined,
131
+ openaiModel: props.Order.alpacaAccount.user.openaiModel !== undefined ? props.Order.alpacaAccount.user.openaiModel : undefined,
132
+ },
133
+ }
134
+ } : undefined,
135
+ trades: props.Order.alpacaAccount.trades ?
136
+ Array.isArray(props.Order.alpacaAccount.trades) && props.Order.alpacaAccount.trades.length > 0 && props.Order.alpacaAccount.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
137
+ connect: props.Order.alpacaAccount.trades.map((item) => ({
138
+ id: item.id
139
+ }))
140
+ }
141
+ : { connectOrCreate: props.Order.alpacaAccount.trades.map((item) => ({
142
+ where: {
143
+ id: item.id !== undefined ? item.id : undefined,
144
+ },
145
+ create: {
146
+ qty: item.qty !== undefined ? item.qty : undefined,
147
+ price: item.price !== undefined ? item.price : undefined,
148
+ total: item.total !== undefined ? item.total : undefined,
149
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
150
+ signal: item.signal !== undefined ? item.signal : undefined,
151
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
152
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
153
+ summary: item.summary !== undefined ? item.summary : undefined,
154
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
155
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
156
+ status: item.status !== undefined ? item.status : undefined,
157
+ },
158
+ }))
159
+ } : undefined,
160
+ positions: props.Order.alpacaAccount.positions ?
161
+ Array.isArray(props.Order.alpacaAccount.positions) && props.Order.alpacaAccount.positions.length > 0 && props.Order.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
162
+ connect: props.Order.alpacaAccount.positions.map((item) => ({
163
+ id: item.id
164
+ }))
165
+ }
166
+ : { connectOrCreate: props.Order.alpacaAccount.positions.map((item) => ({
167
+ where: {
168
+ id: item.id !== undefined ? item.id : undefined,
169
+ },
170
+ create: {
171
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
172
+ qty: item.qty !== undefined ? item.qty : undefined,
173
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
174
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
175
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
176
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
177
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
178
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
179
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
180
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
181
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
182
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
183
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
184
+ },
185
+ }))
186
+ } : undefined,
187
+ alerts: props.Order.alpacaAccount.alerts ?
188
+ Array.isArray(props.Order.alpacaAccount.alerts) && props.Order.alpacaAccount.alerts.length > 0 && props.Order.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
189
+ connect: props.Order.alpacaAccount.alerts.map((item) => ({
190
+ id: item.id
191
+ }))
192
+ }
193
+ : { connectOrCreate: props.Order.alpacaAccount.alerts.map((item) => ({
194
+ where: {
195
+ id: item.id !== undefined ? item.id : undefined,
196
+ },
197
+ create: {
198
+ message: item.message !== undefined ? item.message : undefined,
199
+ type: item.type !== undefined ? item.type : undefined,
200
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
201
+ },
202
+ }))
203
+ } : undefined,
106
204
  },
107
205
  }
108
206
  } : undefined,
@@ -122,6 +220,31 @@ export const TakeProfit = {
122
220
  note: props.Order.action.note !== undefined ? props.Order.action.note : undefined,
123
221
  status: props.Order.action.status !== undefined ? props.Order.action.status : undefined,
124
222
  fee: props.Order.action.fee !== undefined ? props.Order.action.fee : undefined,
223
+ trade: props.Order.action.trade ?
224
+ typeof props.Order.action.trade === 'object' && Object.keys(props.Order.action.trade).length === 1 && Object.keys(props.Order.action.trade)[0] === 'id'
225
+ ? { connect: {
226
+ id: props.Order.action.trade.id
227
+ }
228
+ }
229
+ : { connectOrCreate: {
230
+ where: {
231
+ id: props.Order.action.trade.id !== undefined ? props.Order.action.trade.id : undefined,
232
+ },
233
+ create: {
234
+ qty: props.Order.action.trade.qty !== undefined ? props.Order.action.trade.qty : undefined,
235
+ price: props.Order.action.trade.price !== undefined ? props.Order.action.trade.price : undefined,
236
+ total: props.Order.action.trade.total !== undefined ? props.Order.action.trade.total : undefined,
237
+ optionType: props.Order.action.trade.optionType !== undefined ? props.Order.action.trade.optionType : undefined,
238
+ signal: props.Order.action.trade.signal !== undefined ? props.Order.action.trade.signal : undefined,
239
+ strategy: props.Order.action.trade.strategy !== undefined ? props.Order.action.trade.strategy : undefined,
240
+ analysis: props.Order.action.trade.analysis !== undefined ? props.Order.action.trade.analysis : undefined,
241
+ summary: props.Order.action.trade.summary !== undefined ? props.Order.action.trade.summary : undefined,
242
+ confidence: props.Order.action.trade.confidence !== undefined ? props.Order.action.trade.confidence : undefined,
243
+ timestamp: props.Order.action.trade.timestamp !== undefined ? props.Order.action.trade.timestamp : undefined,
244
+ status: props.Order.action.trade.status !== undefined ? props.Order.action.trade.status : undefined,
245
+ },
246
+ }
247
+ } : undefined,
125
248
  },
126
249
  }
127
250
  } : undefined,
@@ -193,6 +316,77 @@ export const TakeProfit = {
193
316
  exDividendDate: props.Order.asset.exDividendDate !== undefined ? props.Order.asset.exDividendDate : undefined,
194
317
  askPrice: props.Order.asset.askPrice !== undefined ? props.Order.asset.askPrice : undefined,
195
318
  bidPrice: props.Order.asset.bidPrice !== undefined ? props.Order.asset.bidPrice : undefined,
319
+ trades: props.Order.asset.trades ?
320
+ Array.isArray(props.Order.asset.trades) && props.Order.asset.trades.length > 0 && props.Order.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
321
+ connect: props.Order.asset.trades.map((item) => ({
322
+ id: item.id
323
+ }))
324
+ }
325
+ : { connectOrCreate: props.Order.asset.trades.map((item) => ({
326
+ where: {
327
+ id: item.id !== undefined ? item.id : undefined,
328
+ },
329
+ create: {
330
+ qty: item.qty !== undefined ? item.qty : undefined,
331
+ price: item.price !== undefined ? item.price : undefined,
332
+ total: item.total !== undefined ? item.total : undefined,
333
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
334
+ signal: item.signal !== undefined ? item.signal : undefined,
335
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
336
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
337
+ summary: item.summary !== undefined ? item.summary : undefined,
338
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
339
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
340
+ status: item.status !== undefined ? item.status : undefined,
341
+ },
342
+ }))
343
+ } : undefined,
344
+ positions: props.Order.asset.positions ?
345
+ Array.isArray(props.Order.asset.positions) && props.Order.asset.positions.length > 0 && props.Order.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
346
+ connect: props.Order.asset.positions.map((item) => ({
347
+ id: item.id
348
+ }))
349
+ }
350
+ : { connectOrCreate: props.Order.asset.positions.map((item) => ({
351
+ where: {
352
+ id: item.id !== undefined ? item.id : undefined,
353
+ },
354
+ create: {
355
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
356
+ qty: item.qty !== undefined ? item.qty : undefined,
357
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
358
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
359
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
360
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
361
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
362
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
363
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
364
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
365
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
366
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
367
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
368
+ },
369
+ }))
370
+ } : undefined,
371
+ newsMentions: props.Order.asset.newsMentions ?
372
+ Array.isArray(props.Order.asset.newsMentions) && props.Order.asset.newsMentions.length > 0 && props.Order.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
373
+ connect: props.Order.asset.newsMentions.map((item) => ({
374
+ id: item.id
375
+ }))
376
+ }
377
+ : { connectOrCreate: props.Order.asset.newsMentions.map((item) => ({
378
+ where: {
379
+ id: item.id !== undefined ? item.id : undefined,
380
+ url: item.url !== undefined ? item.url : undefined,
381
+ },
382
+ create: {
383
+ url: item.url !== undefined ? item.url : undefined,
384
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
385
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
386
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
387
+ },
388
+ }))
389
+ } : undefined,
196
390
  },
197
391
  }
198
392
  } : undefined,
@@ -270,18 +464,10 @@ export const TakeProfit = {
270
464
  }`;
271
465
  const variables = {
272
466
  where: {
273
- id: props.id !== undefined ? {
274
- equals: props.id
275
- } : undefined,
276
- orderId: props.orderId !== undefined ? {
277
- equals: props.orderId
278
- } : undefined,
279
- createdAt: props.createdAt !== undefined ? {
280
- equals: props.createdAt
281
- } : undefined,
282
- updatedAt: props.updatedAt !== undefined ? {
283
- equals: props.updatedAt
284
- } : undefined,
467
+ id: props.id !== undefined ? props.id : undefined,
468
+ orderId: props.orderId !== undefined ? props.orderId : undefined,
469
+ createdAt: props.createdAt !== undefined ? props.createdAt : undefined,
470
+ updatedAt: props.updatedAt !== undefined ? props.updatedAt : undefined,
285
471
  },
286
472
  data: {
287
473
  id: props.id !== undefined ? {
@@ -438,6 +624,222 @@ export const TakeProfit = {
438
624
  volumeThreshold: props.Order.alpacaAccount.volumeThreshold !== undefined ? {
439
625
  set: props.Order.alpacaAccount.volumeThreshold
440
626
  } : undefined,
627
+ user: props.Order.alpacaAccount.user ? {
628
+ upsert: {
629
+ where: {
630
+ id: props.Order.alpacaAccount.user.id !== undefined ? {
631
+ equals: props.Order.alpacaAccount.user.id
632
+ } : undefined,
633
+ name: props.Order.alpacaAccount.user.name !== undefined ? {
634
+ equals: props.Order.alpacaAccount.user.name
635
+ } : undefined,
636
+ email: props.Order.alpacaAccount.user.email !== undefined ? {
637
+ equals: props.Order.alpacaAccount.user.email
638
+ } : undefined,
639
+ },
640
+ update: {
641
+ id: props.Order.alpacaAccount.user.id !== undefined ? {
642
+ set: props.Order.alpacaAccount.user.id
643
+ } : undefined,
644
+ name: props.Order.alpacaAccount.user.name !== undefined ? {
645
+ set: props.Order.alpacaAccount.user.name
646
+ } : undefined,
647
+ email: props.Order.alpacaAccount.user.email !== undefined ? {
648
+ set: props.Order.alpacaAccount.user.email
649
+ } : undefined,
650
+ emailVerified: props.Order.alpacaAccount.user.emailVerified !== undefined ? {
651
+ set: props.Order.alpacaAccount.user.emailVerified
652
+ } : undefined,
653
+ image: props.Order.alpacaAccount.user.image !== undefined ? {
654
+ set: props.Order.alpacaAccount.user.image
655
+ } : undefined,
656
+ role: props.Order.alpacaAccount.user.role !== undefined ? {
657
+ set: props.Order.alpacaAccount.user.role
658
+ } : undefined,
659
+ bio: props.Order.alpacaAccount.user.bio !== undefined ? {
660
+ set: props.Order.alpacaAccount.user.bio
661
+ } : undefined,
662
+ jobTitle: props.Order.alpacaAccount.user.jobTitle !== undefined ? {
663
+ set: props.Order.alpacaAccount.user.jobTitle
664
+ } : undefined,
665
+ currentAccount: props.Order.alpacaAccount.user.currentAccount !== undefined ? {
666
+ set: props.Order.alpacaAccount.user.currentAccount
667
+ } : undefined,
668
+ plan: props.Order.alpacaAccount.user.plan !== undefined ? {
669
+ set: props.Order.alpacaAccount.user.plan
670
+ } : undefined,
671
+ openaiAPIKey: props.Order.alpacaAccount.user.openaiAPIKey !== undefined ? {
672
+ set: props.Order.alpacaAccount.user.openaiAPIKey
673
+ } : undefined,
674
+ openaiModel: props.Order.alpacaAccount.user.openaiModel !== undefined ? {
675
+ set: props.Order.alpacaAccount.user.openaiModel
676
+ } : undefined,
677
+ },
678
+ create: {
679
+ name: props.Order.alpacaAccount.user.name !== undefined ? props.Order.alpacaAccount.user.name : undefined,
680
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
681
+ emailVerified: props.Order.alpacaAccount.user.emailVerified !== undefined ? props.Order.alpacaAccount.user.emailVerified : undefined,
682
+ image: props.Order.alpacaAccount.user.image !== undefined ? props.Order.alpacaAccount.user.image : undefined,
683
+ role: props.Order.alpacaAccount.user.role !== undefined ? props.Order.alpacaAccount.user.role : undefined,
684
+ bio: props.Order.alpacaAccount.user.bio !== undefined ? props.Order.alpacaAccount.user.bio : undefined,
685
+ jobTitle: props.Order.alpacaAccount.user.jobTitle !== undefined ? props.Order.alpacaAccount.user.jobTitle : undefined,
686
+ currentAccount: props.Order.alpacaAccount.user.currentAccount !== undefined ? props.Order.alpacaAccount.user.currentAccount : undefined,
687
+ plan: props.Order.alpacaAccount.user.plan !== undefined ? props.Order.alpacaAccount.user.plan : undefined,
688
+ openaiAPIKey: props.Order.alpacaAccount.user.openaiAPIKey !== undefined ? props.Order.alpacaAccount.user.openaiAPIKey : undefined,
689
+ openaiModel: props.Order.alpacaAccount.user.openaiModel !== undefined ? props.Order.alpacaAccount.user.openaiModel : undefined,
690
+ },
691
+ }
692
+ } : undefined,
693
+ trades: props.Order.alpacaAccount.trades ? {
694
+ upsert: props.Order.alpacaAccount.trades.map((item) => ({
695
+ where: {
696
+ id: item.id !== undefined ? item.id : undefined,
697
+ },
698
+ update: {
699
+ id: item.id !== undefined ? {
700
+ set: item.id
701
+ } : undefined,
702
+ qty: item.qty !== undefined ? {
703
+ set: item.qty
704
+ } : undefined,
705
+ price: item.price !== undefined ? {
706
+ set: item.price
707
+ } : undefined,
708
+ total: item.total !== undefined ? {
709
+ set: item.total
710
+ } : undefined,
711
+ optionType: item.optionType !== undefined ? {
712
+ set: item.optionType
713
+ } : undefined,
714
+ signal: item.signal !== undefined ? {
715
+ set: item.signal
716
+ } : undefined,
717
+ strategy: item.strategy !== undefined ? {
718
+ set: item.strategy
719
+ } : undefined,
720
+ analysis: item.analysis !== undefined ? {
721
+ set: item.analysis
722
+ } : undefined,
723
+ summary: item.summary !== undefined ? {
724
+ set: item.summary
725
+ } : undefined,
726
+ confidence: item.confidence !== undefined ? {
727
+ set: item.confidence
728
+ } : undefined,
729
+ timestamp: item.timestamp !== undefined ? {
730
+ set: item.timestamp
731
+ } : undefined,
732
+ status: item.status !== undefined ? {
733
+ set: item.status
734
+ } : undefined,
735
+ },
736
+ create: {
737
+ qty: item.qty !== undefined ? item.qty : undefined,
738
+ price: item.price !== undefined ? item.price : undefined,
739
+ total: item.total !== undefined ? item.total : undefined,
740
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
741
+ signal: item.signal !== undefined ? item.signal : undefined,
742
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
743
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
744
+ summary: item.summary !== undefined ? item.summary : undefined,
745
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
746
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
747
+ status: item.status !== undefined ? item.status : undefined,
748
+ },
749
+ }))
750
+ } : undefined,
751
+ positions: props.Order.alpacaAccount.positions ? {
752
+ upsert: props.Order.alpacaAccount.positions.map((item) => ({
753
+ where: {
754
+ id: item.id !== undefined ? item.id : undefined,
755
+ },
756
+ update: {
757
+ id: item.id !== undefined ? {
758
+ set: item.id
759
+ } : undefined,
760
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
761
+ set: item.averageEntryPrice
762
+ } : undefined,
763
+ qty: item.qty !== undefined ? {
764
+ set: item.qty
765
+ } : undefined,
766
+ qtyAvailable: item.qtyAvailable !== undefined ? {
767
+ set: item.qtyAvailable
768
+ } : undefined,
769
+ marketValue: item.marketValue !== undefined ? {
770
+ set: item.marketValue
771
+ } : undefined,
772
+ costBasis: item.costBasis !== undefined ? {
773
+ set: item.costBasis
774
+ } : undefined,
775
+ unrealizedPL: item.unrealizedPL !== undefined ? {
776
+ set: item.unrealizedPL
777
+ } : undefined,
778
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
779
+ set: item.unrealizedPLPC
780
+ } : undefined,
781
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
782
+ set: item.unrealisedIntradayPL
783
+ } : undefined,
784
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
785
+ set: item.unrealisedIntradayPLPC
786
+ } : undefined,
787
+ currentPrice: item.currentPrice !== undefined ? {
788
+ set: item.currentPrice
789
+ } : undefined,
790
+ lastTradePrice: item.lastTradePrice !== undefined ? {
791
+ set: item.lastTradePrice
792
+ } : undefined,
793
+ changeToday: item.changeToday !== undefined ? {
794
+ set: item.changeToday
795
+ } : undefined,
796
+ assetMarginable: item.assetMarginable !== undefined ? {
797
+ set: item.assetMarginable
798
+ } : undefined,
799
+ },
800
+ create: {
801
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
802
+ qty: item.qty !== undefined ? item.qty : undefined,
803
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
804
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
805
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
806
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
807
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
808
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
809
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
810
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
811
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
812
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
813
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
814
+ },
815
+ }))
816
+ } : undefined,
817
+ alerts: props.Order.alpacaAccount.alerts ? {
818
+ upsert: props.Order.alpacaAccount.alerts.map((item) => ({
819
+ where: {
820
+ id: item.id !== undefined ? item.id : undefined,
821
+ },
822
+ update: {
823
+ id: item.id !== undefined ? {
824
+ set: item.id
825
+ } : undefined,
826
+ message: item.message !== undefined ? {
827
+ set: item.message
828
+ } : undefined,
829
+ type: item.type !== undefined ? {
830
+ set: item.type
831
+ } : undefined,
832
+ isRead: item.isRead !== undefined ? {
833
+ set: item.isRead
834
+ } : undefined,
835
+ },
836
+ create: {
837
+ message: item.message !== undefined ? item.message : undefined,
838
+ type: item.type !== undefined ? item.type : undefined,
839
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
840
+ },
841
+ }))
842
+ } : undefined,
441
843
  },
442
844
  create: {
443
845
  type: props.Order.alpacaAccount.type !== undefined ? props.Order.alpacaAccount.type : undefined,
@@ -449,6 +851,104 @@ export const TakeProfit = {
449
851
  maxOrderSize: props.Order.alpacaAccount.maxOrderSize !== undefined ? props.Order.alpacaAccount.maxOrderSize : undefined,
450
852
  minPercentageChange: props.Order.alpacaAccount.minPercentageChange !== undefined ? props.Order.alpacaAccount.minPercentageChange : undefined,
451
853
  volumeThreshold: props.Order.alpacaAccount.volumeThreshold !== undefined ? props.Order.alpacaAccount.volumeThreshold : undefined,
854
+ user: props.Order.alpacaAccount.user ?
855
+ typeof props.Order.alpacaAccount.user === 'object' && Object.keys(props.Order.alpacaAccount.user).length === 1 && Object.keys(props.Order.alpacaAccount.user)[0] === 'id'
856
+ ? { connect: {
857
+ id: props.Order.alpacaAccount.user.id
858
+ }
859
+ }
860
+ : { connectOrCreate: {
861
+ where: {
862
+ id: props.Order.alpacaAccount.user.id !== undefined ? props.Order.alpacaAccount.user.id : undefined,
863
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
864
+ name: props.Order.alpacaAccount.user.name !== undefined ? {
865
+ equals: props.Order.alpacaAccount.user.name
866
+ } : undefined,
867
+ },
868
+ create: {
869
+ name: props.Order.alpacaAccount.user.name !== undefined ? props.Order.alpacaAccount.user.name : undefined,
870
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
871
+ emailVerified: props.Order.alpacaAccount.user.emailVerified !== undefined ? props.Order.alpacaAccount.user.emailVerified : undefined,
872
+ image: props.Order.alpacaAccount.user.image !== undefined ? props.Order.alpacaAccount.user.image : undefined,
873
+ role: props.Order.alpacaAccount.user.role !== undefined ? props.Order.alpacaAccount.user.role : undefined,
874
+ bio: props.Order.alpacaAccount.user.bio !== undefined ? props.Order.alpacaAccount.user.bio : undefined,
875
+ jobTitle: props.Order.alpacaAccount.user.jobTitle !== undefined ? props.Order.alpacaAccount.user.jobTitle : undefined,
876
+ currentAccount: props.Order.alpacaAccount.user.currentAccount !== undefined ? props.Order.alpacaAccount.user.currentAccount : undefined,
877
+ plan: props.Order.alpacaAccount.user.plan !== undefined ? props.Order.alpacaAccount.user.plan : undefined,
878
+ openaiAPIKey: props.Order.alpacaAccount.user.openaiAPIKey !== undefined ? props.Order.alpacaAccount.user.openaiAPIKey : undefined,
879
+ openaiModel: props.Order.alpacaAccount.user.openaiModel !== undefined ? props.Order.alpacaAccount.user.openaiModel : undefined,
880
+ },
881
+ }
882
+ } : undefined,
883
+ trades: props.Order.alpacaAccount.trades ?
884
+ Array.isArray(props.Order.alpacaAccount.trades) && props.Order.alpacaAccount.trades.length > 0 && props.Order.alpacaAccount.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
885
+ connect: props.Order.alpacaAccount.trades.map((item) => ({
886
+ id: item.id
887
+ }))
888
+ }
889
+ : { connectOrCreate: props.Order.alpacaAccount.trades.map((item) => ({
890
+ where: {
891
+ id: item.id !== undefined ? item.id : undefined,
892
+ },
893
+ create: {
894
+ qty: item.qty !== undefined ? item.qty : undefined,
895
+ price: item.price !== undefined ? item.price : undefined,
896
+ total: item.total !== undefined ? item.total : undefined,
897
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
898
+ signal: item.signal !== undefined ? item.signal : undefined,
899
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
900
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
901
+ summary: item.summary !== undefined ? item.summary : undefined,
902
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
903
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
904
+ status: item.status !== undefined ? item.status : undefined,
905
+ },
906
+ }))
907
+ } : undefined,
908
+ positions: props.Order.alpacaAccount.positions ?
909
+ Array.isArray(props.Order.alpacaAccount.positions) && props.Order.alpacaAccount.positions.length > 0 && props.Order.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
910
+ connect: props.Order.alpacaAccount.positions.map((item) => ({
911
+ id: item.id
912
+ }))
913
+ }
914
+ : { connectOrCreate: props.Order.alpacaAccount.positions.map((item) => ({
915
+ where: {
916
+ id: item.id !== undefined ? item.id : undefined,
917
+ },
918
+ create: {
919
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
920
+ qty: item.qty !== undefined ? item.qty : undefined,
921
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
922
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
923
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
924
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
925
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
926
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
927
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
928
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
929
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
930
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
931
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
932
+ },
933
+ }))
934
+ } : undefined,
935
+ alerts: props.Order.alpacaAccount.alerts ?
936
+ Array.isArray(props.Order.alpacaAccount.alerts) && props.Order.alpacaAccount.alerts.length > 0 && props.Order.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
937
+ connect: props.Order.alpacaAccount.alerts.map((item) => ({
938
+ id: item.id
939
+ }))
940
+ }
941
+ : { connectOrCreate: props.Order.alpacaAccount.alerts.map((item) => ({
942
+ where: {
943
+ id: item.id !== undefined ? item.id : undefined,
944
+ },
945
+ create: {
946
+ message: item.message !== undefined ? item.message : undefined,
947
+ type: item.type !== undefined ? item.type : undefined,
948
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
949
+ },
950
+ }))
951
+ } : undefined,
452
952
  },
453
953
  }
454
954
  } : undefined,
@@ -478,6 +978,66 @@ export const TakeProfit = {
478
978
  fee: props.Order.action.fee !== undefined ? {
479
979
  set: props.Order.action.fee
480
980
  } : undefined,
981
+ trade: props.Order.action.trade ? {
982
+ upsert: {
983
+ where: {
984
+ id: props.Order.action.trade.id !== undefined ? {
985
+ equals: props.Order.action.trade.id
986
+ } : undefined,
987
+ },
988
+ update: {
989
+ id: props.Order.action.trade.id !== undefined ? {
990
+ set: props.Order.action.trade.id
991
+ } : undefined,
992
+ qty: props.Order.action.trade.qty !== undefined ? {
993
+ set: props.Order.action.trade.qty
994
+ } : undefined,
995
+ price: props.Order.action.trade.price !== undefined ? {
996
+ set: props.Order.action.trade.price
997
+ } : undefined,
998
+ total: props.Order.action.trade.total !== undefined ? {
999
+ set: props.Order.action.trade.total
1000
+ } : undefined,
1001
+ optionType: props.Order.action.trade.optionType !== undefined ? {
1002
+ set: props.Order.action.trade.optionType
1003
+ } : undefined,
1004
+ signal: props.Order.action.trade.signal !== undefined ? {
1005
+ set: props.Order.action.trade.signal
1006
+ } : undefined,
1007
+ strategy: props.Order.action.trade.strategy !== undefined ? {
1008
+ set: props.Order.action.trade.strategy
1009
+ } : undefined,
1010
+ analysis: props.Order.action.trade.analysis !== undefined ? {
1011
+ set: props.Order.action.trade.analysis
1012
+ } : undefined,
1013
+ summary: props.Order.action.trade.summary !== undefined ? {
1014
+ set: props.Order.action.trade.summary
1015
+ } : undefined,
1016
+ confidence: props.Order.action.trade.confidence !== undefined ? {
1017
+ set: props.Order.action.trade.confidence
1018
+ } : undefined,
1019
+ timestamp: props.Order.action.trade.timestamp !== undefined ? {
1020
+ set: props.Order.action.trade.timestamp
1021
+ } : undefined,
1022
+ status: props.Order.action.trade.status !== undefined ? {
1023
+ set: props.Order.action.trade.status
1024
+ } : undefined,
1025
+ },
1026
+ create: {
1027
+ qty: props.Order.action.trade.qty !== undefined ? props.Order.action.trade.qty : undefined,
1028
+ price: props.Order.action.trade.price !== undefined ? props.Order.action.trade.price : undefined,
1029
+ total: props.Order.action.trade.total !== undefined ? props.Order.action.trade.total : undefined,
1030
+ optionType: props.Order.action.trade.optionType !== undefined ? props.Order.action.trade.optionType : undefined,
1031
+ signal: props.Order.action.trade.signal !== undefined ? props.Order.action.trade.signal : undefined,
1032
+ strategy: props.Order.action.trade.strategy !== undefined ? props.Order.action.trade.strategy : undefined,
1033
+ analysis: props.Order.action.trade.analysis !== undefined ? props.Order.action.trade.analysis : undefined,
1034
+ summary: props.Order.action.trade.summary !== undefined ? props.Order.action.trade.summary : undefined,
1035
+ confidence: props.Order.action.trade.confidence !== undefined ? props.Order.action.trade.confidence : undefined,
1036
+ timestamp: props.Order.action.trade.timestamp !== undefined ? props.Order.action.trade.timestamp : undefined,
1037
+ status: props.Order.action.trade.status !== undefined ? props.Order.action.trade.status : undefined,
1038
+ },
1039
+ }
1040
+ } : undefined,
481
1041
  },
482
1042
  create: {
483
1043
  sequence: props.Order.action.sequence !== undefined ? props.Order.action.sequence : undefined,
@@ -485,6 +1045,31 @@ export const TakeProfit = {
485
1045
  note: props.Order.action.note !== undefined ? props.Order.action.note : undefined,
486
1046
  status: props.Order.action.status !== undefined ? props.Order.action.status : undefined,
487
1047
  fee: props.Order.action.fee !== undefined ? props.Order.action.fee : undefined,
1048
+ trade: props.Order.action.trade ?
1049
+ typeof props.Order.action.trade === 'object' && Object.keys(props.Order.action.trade).length === 1 && Object.keys(props.Order.action.trade)[0] === 'id'
1050
+ ? { connect: {
1051
+ id: props.Order.action.trade.id
1052
+ }
1053
+ }
1054
+ : { connectOrCreate: {
1055
+ where: {
1056
+ id: props.Order.action.trade.id !== undefined ? props.Order.action.trade.id : undefined,
1057
+ },
1058
+ create: {
1059
+ qty: props.Order.action.trade.qty !== undefined ? props.Order.action.trade.qty : undefined,
1060
+ price: props.Order.action.trade.price !== undefined ? props.Order.action.trade.price : undefined,
1061
+ total: props.Order.action.trade.total !== undefined ? props.Order.action.trade.total : undefined,
1062
+ optionType: props.Order.action.trade.optionType !== undefined ? props.Order.action.trade.optionType : undefined,
1063
+ signal: props.Order.action.trade.signal !== undefined ? props.Order.action.trade.signal : undefined,
1064
+ strategy: props.Order.action.trade.strategy !== undefined ? props.Order.action.trade.strategy : undefined,
1065
+ analysis: props.Order.action.trade.analysis !== undefined ? props.Order.action.trade.analysis : undefined,
1066
+ summary: props.Order.action.trade.summary !== undefined ? props.Order.action.trade.summary : undefined,
1067
+ confidence: props.Order.action.trade.confidence !== undefined ? props.Order.action.trade.confidence : undefined,
1068
+ timestamp: props.Order.action.trade.timestamp !== undefined ? props.Order.action.trade.timestamp : undefined,
1069
+ status: props.Order.action.trade.status !== undefined ? props.Order.action.trade.status : undefined,
1070
+ },
1071
+ }
1072
+ } : undefined,
488
1073
  },
489
1074
  }
490
1075
  } : undefined,
@@ -670,6 +1255,161 @@ export const TakeProfit = {
670
1255
  bidPrice: props.Order.asset.bidPrice !== undefined ? {
671
1256
  set: props.Order.asset.bidPrice
672
1257
  } : undefined,
1258
+ trades: props.Order.asset.trades ? {
1259
+ upsert: props.Order.asset.trades.map((item) => ({
1260
+ where: {
1261
+ id: item.id !== undefined ? item.id : undefined,
1262
+ },
1263
+ update: {
1264
+ id: item.id !== undefined ? {
1265
+ set: item.id
1266
+ } : undefined,
1267
+ qty: item.qty !== undefined ? {
1268
+ set: item.qty
1269
+ } : undefined,
1270
+ price: item.price !== undefined ? {
1271
+ set: item.price
1272
+ } : undefined,
1273
+ total: item.total !== undefined ? {
1274
+ set: item.total
1275
+ } : undefined,
1276
+ optionType: item.optionType !== undefined ? {
1277
+ set: item.optionType
1278
+ } : undefined,
1279
+ signal: item.signal !== undefined ? {
1280
+ set: item.signal
1281
+ } : undefined,
1282
+ strategy: item.strategy !== undefined ? {
1283
+ set: item.strategy
1284
+ } : undefined,
1285
+ analysis: item.analysis !== undefined ? {
1286
+ set: item.analysis
1287
+ } : undefined,
1288
+ summary: item.summary !== undefined ? {
1289
+ set: item.summary
1290
+ } : undefined,
1291
+ confidence: item.confidence !== undefined ? {
1292
+ set: item.confidence
1293
+ } : undefined,
1294
+ timestamp: item.timestamp !== undefined ? {
1295
+ set: item.timestamp
1296
+ } : undefined,
1297
+ status: item.status !== undefined ? {
1298
+ set: item.status
1299
+ } : undefined,
1300
+ },
1301
+ create: {
1302
+ qty: item.qty !== undefined ? item.qty : undefined,
1303
+ price: item.price !== undefined ? item.price : undefined,
1304
+ total: item.total !== undefined ? item.total : undefined,
1305
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1306
+ signal: item.signal !== undefined ? item.signal : undefined,
1307
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
1308
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
1309
+ summary: item.summary !== undefined ? item.summary : undefined,
1310
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
1311
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
1312
+ status: item.status !== undefined ? item.status : undefined,
1313
+ },
1314
+ }))
1315
+ } : undefined,
1316
+ positions: props.Order.asset.positions ? {
1317
+ upsert: props.Order.asset.positions.map((item) => ({
1318
+ where: {
1319
+ id: item.id !== undefined ? item.id : undefined,
1320
+ },
1321
+ update: {
1322
+ id: item.id !== undefined ? {
1323
+ set: item.id
1324
+ } : undefined,
1325
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
1326
+ set: item.averageEntryPrice
1327
+ } : undefined,
1328
+ qty: item.qty !== undefined ? {
1329
+ set: item.qty
1330
+ } : undefined,
1331
+ qtyAvailable: item.qtyAvailable !== undefined ? {
1332
+ set: item.qtyAvailable
1333
+ } : undefined,
1334
+ marketValue: item.marketValue !== undefined ? {
1335
+ set: item.marketValue
1336
+ } : undefined,
1337
+ costBasis: item.costBasis !== undefined ? {
1338
+ set: item.costBasis
1339
+ } : undefined,
1340
+ unrealizedPL: item.unrealizedPL !== undefined ? {
1341
+ set: item.unrealizedPL
1342
+ } : undefined,
1343
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
1344
+ set: item.unrealizedPLPC
1345
+ } : undefined,
1346
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
1347
+ set: item.unrealisedIntradayPL
1348
+ } : undefined,
1349
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
1350
+ set: item.unrealisedIntradayPLPC
1351
+ } : undefined,
1352
+ currentPrice: item.currentPrice !== undefined ? {
1353
+ set: item.currentPrice
1354
+ } : undefined,
1355
+ lastTradePrice: item.lastTradePrice !== undefined ? {
1356
+ set: item.lastTradePrice
1357
+ } : undefined,
1358
+ changeToday: item.changeToday !== undefined ? {
1359
+ set: item.changeToday
1360
+ } : undefined,
1361
+ assetMarginable: item.assetMarginable !== undefined ? {
1362
+ set: item.assetMarginable
1363
+ } : undefined,
1364
+ },
1365
+ create: {
1366
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1367
+ qty: item.qty !== undefined ? item.qty : undefined,
1368
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1369
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1370
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1371
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1372
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1373
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1374
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1375
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1376
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1377
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1378
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1379
+ },
1380
+ }))
1381
+ } : undefined,
1382
+ newsMentions: props.Order.asset.newsMentions ? {
1383
+ upsert: props.Order.asset.newsMentions.map((item) => ({
1384
+ where: {
1385
+ id: item.id !== undefined ? item.id : undefined,
1386
+ url: item.url !== undefined ? item.url : undefined,
1387
+ },
1388
+ update: {
1389
+ id: item.id !== undefined ? {
1390
+ set: item.id
1391
+ } : undefined,
1392
+ url: item.url !== undefined ? {
1393
+ set: item.url
1394
+ } : undefined,
1395
+ relevancyScore: item.relevancyScore !== undefined ? {
1396
+ set: item.relevancyScore
1397
+ } : undefined,
1398
+ sentimentScore: item.sentimentScore !== undefined ? {
1399
+ set: item.sentimentScore
1400
+ } : undefined,
1401
+ sentimentLabel: item.sentimentLabel !== undefined ? {
1402
+ set: item.sentimentLabel
1403
+ } : undefined,
1404
+ },
1405
+ create: {
1406
+ url: item.url !== undefined ? item.url : undefined,
1407
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1408
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1409
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1410
+ },
1411
+ }))
1412
+ } : undefined,
673
1413
  },
674
1414
  create: {
675
1415
  symbol: props.Order.asset.symbol !== undefined ? props.Order.asset.symbol : undefined,
@@ -727,6 +1467,77 @@ export const TakeProfit = {
727
1467
  exDividendDate: props.Order.asset.exDividendDate !== undefined ? props.Order.asset.exDividendDate : undefined,
728
1468
  askPrice: props.Order.asset.askPrice !== undefined ? props.Order.asset.askPrice : undefined,
729
1469
  bidPrice: props.Order.asset.bidPrice !== undefined ? props.Order.asset.bidPrice : undefined,
1470
+ trades: props.Order.asset.trades ?
1471
+ Array.isArray(props.Order.asset.trades) && props.Order.asset.trades.length > 0 && props.Order.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1472
+ connect: props.Order.asset.trades.map((item) => ({
1473
+ id: item.id
1474
+ }))
1475
+ }
1476
+ : { connectOrCreate: props.Order.asset.trades.map((item) => ({
1477
+ where: {
1478
+ id: item.id !== undefined ? item.id : undefined,
1479
+ },
1480
+ create: {
1481
+ qty: item.qty !== undefined ? item.qty : undefined,
1482
+ price: item.price !== undefined ? item.price : undefined,
1483
+ total: item.total !== undefined ? item.total : undefined,
1484
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1485
+ signal: item.signal !== undefined ? item.signal : undefined,
1486
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
1487
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
1488
+ summary: item.summary !== undefined ? item.summary : undefined,
1489
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
1490
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
1491
+ status: item.status !== undefined ? item.status : undefined,
1492
+ },
1493
+ }))
1494
+ } : undefined,
1495
+ positions: props.Order.asset.positions ?
1496
+ Array.isArray(props.Order.asset.positions) && props.Order.asset.positions.length > 0 && props.Order.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1497
+ connect: props.Order.asset.positions.map((item) => ({
1498
+ id: item.id
1499
+ }))
1500
+ }
1501
+ : { connectOrCreate: props.Order.asset.positions.map((item) => ({
1502
+ where: {
1503
+ id: item.id !== undefined ? item.id : undefined,
1504
+ },
1505
+ create: {
1506
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1507
+ qty: item.qty !== undefined ? item.qty : undefined,
1508
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1509
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1510
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1511
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1512
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1513
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1514
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1515
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1516
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1517
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1518
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1519
+ },
1520
+ }))
1521
+ } : undefined,
1522
+ newsMentions: props.Order.asset.newsMentions ?
1523
+ Array.isArray(props.Order.asset.newsMentions) && props.Order.asset.newsMentions.length > 0 && props.Order.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1524
+ connect: props.Order.asset.newsMentions.map((item) => ({
1525
+ id: item.id
1526
+ }))
1527
+ }
1528
+ : { connectOrCreate: props.Order.asset.newsMentions.map((item) => ({
1529
+ where: {
1530
+ id: item.id !== undefined ? item.id : undefined,
1531
+ url: item.url !== undefined ? item.url : undefined,
1532
+ },
1533
+ create: {
1534
+ url: item.url !== undefined ? item.url : undefined,
1535
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1536
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1537
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1538
+ },
1539
+ }))
1540
+ } : undefined,
730
1541
  },
731
1542
  }
732
1543
  } : undefined,
@@ -790,6 +1601,104 @@ export const TakeProfit = {
790
1601
  maxOrderSize: props.Order.alpacaAccount.maxOrderSize !== undefined ? props.Order.alpacaAccount.maxOrderSize : undefined,
791
1602
  minPercentageChange: props.Order.alpacaAccount.minPercentageChange !== undefined ? props.Order.alpacaAccount.minPercentageChange : undefined,
792
1603
  volumeThreshold: props.Order.alpacaAccount.volumeThreshold !== undefined ? props.Order.alpacaAccount.volumeThreshold : undefined,
1604
+ user: props.Order.alpacaAccount.user ?
1605
+ typeof props.Order.alpacaAccount.user === 'object' && Object.keys(props.Order.alpacaAccount.user).length === 1 && Object.keys(props.Order.alpacaAccount.user)[0] === 'id'
1606
+ ? { connect: {
1607
+ id: props.Order.alpacaAccount.user.id
1608
+ }
1609
+ }
1610
+ : { connectOrCreate: {
1611
+ where: {
1612
+ id: props.Order.alpacaAccount.user.id !== undefined ? props.Order.alpacaAccount.user.id : undefined,
1613
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
1614
+ name: props.Order.alpacaAccount.user.name !== undefined ? {
1615
+ equals: props.Order.alpacaAccount.user.name
1616
+ } : undefined,
1617
+ },
1618
+ create: {
1619
+ name: props.Order.alpacaAccount.user.name !== undefined ? props.Order.alpacaAccount.user.name : undefined,
1620
+ email: props.Order.alpacaAccount.user.email !== undefined ? props.Order.alpacaAccount.user.email : undefined,
1621
+ emailVerified: props.Order.alpacaAccount.user.emailVerified !== undefined ? props.Order.alpacaAccount.user.emailVerified : undefined,
1622
+ image: props.Order.alpacaAccount.user.image !== undefined ? props.Order.alpacaAccount.user.image : undefined,
1623
+ role: props.Order.alpacaAccount.user.role !== undefined ? props.Order.alpacaAccount.user.role : undefined,
1624
+ bio: props.Order.alpacaAccount.user.bio !== undefined ? props.Order.alpacaAccount.user.bio : undefined,
1625
+ jobTitle: props.Order.alpacaAccount.user.jobTitle !== undefined ? props.Order.alpacaAccount.user.jobTitle : undefined,
1626
+ currentAccount: props.Order.alpacaAccount.user.currentAccount !== undefined ? props.Order.alpacaAccount.user.currentAccount : undefined,
1627
+ plan: props.Order.alpacaAccount.user.plan !== undefined ? props.Order.alpacaAccount.user.plan : undefined,
1628
+ openaiAPIKey: props.Order.alpacaAccount.user.openaiAPIKey !== undefined ? props.Order.alpacaAccount.user.openaiAPIKey : undefined,
1629
+ openaiModel: props.Order.alpacaAccount.user.openaiModel !== undefined ? props.Order.alpacaAccount.user.openaiModel : undefined,
1630
+ },
1631
+ }
1632
+ } : undefined,
1633
+ trades: props.Order.alpacaAccount.trades ?
1634
+ Array.isArray(props.Order.alpacaAccount.trades) && props.Order.alpacaAccount.trades.length > 0 && props.Order.alpacaAccount.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1635
+ connect: props.Order.alpacaAccount.trades.map((item) => ({
1636
+ id: item.id
1637
+ }))
1638
+ }
1639
+ : { connectOrCreate: props.Order.alpacaAccount.trades.map((item) => ({
1640
+ where: {
1641
+ id: item.id !== undefined ? item.id : undefined,
1642
+ },
1643
+ create: {
1644
+ qty: item.qty !== undefined ? item.qty : undefined,
1645
+ price: item.price !== undefined ? item.price : undefined,
1646
+ total: item.total !== undefined ? item.total : undefined,
1647
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1648
+ signal: item.signal !== undefined ? item.signal : undefined,
1649
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
1650
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
1651
+ summary: item.summary !== undefined ? item.summary : undefined,
1652
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
1653
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
1654
+ status: item.status !== undefined ? item.status : undefined,
1655
+ },
1656
+ }))
1657
+ } : undefined,
1658
+ positions: props.Order.alpacaAccount.positions ?
1659
+ Array.isArray(props.Order.alpacaAccount.positions) && props.Order.alpacaAccount.positions.length > 0 && props.Order.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1660
+ connect: props.Order.alpacaAccount.positions.map((item) => ({
1661
+ id: item.id
1662
+ }))
1663
+ }
1664
+ : { connectOrCreate: props.Order.alpacaAccount.positions.map((item) => ({
1665
+ where: {
1666
+ id: item.id !== undefined ? item.id : undefined,
1667
+ },
1668
+ create: {
1669
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1670
+ qty: item.qty !== undefined ? item.qty : undefined,
1671
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1672
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1673
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1674
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1675
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1676
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1677
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1678
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1679
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1680
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1681
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1682
+ },
1683
+ }))
1684
+ } : undefined,
1685
+ alerts: props.Order.alpacaAccount.alerts ?
1686
+ Array.isArray(props.Order.alpacaAccount.alerts) && props.Order.alpacaAccount.alerts.length > 0 && props.Order.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1687
+ connect: props.Order.alpacaAccount.alerts.map((item) => ({
1688
+ id: item.id
1689
+ }))
1690
+ }
1691
+ : { connectOrCreate: props.Order.alpacaAccount.alerts.map((item) => ({
1692
+ where: {
1693
+ id: item.id !== undefined ? item.id : undefined,
1694
+ },
1695
+ create: {
1696
+ message: item.message !== undefined ? item.message : undefined,
1697
+ type: item.type !== undefined ? item.type : undefined,
1698
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
1699
+ },
1700
+ }))
1701
+ } : undefined,
793
1702
  },
794
1703
  }
795
1704
  } : undefined,
@@ -809,6 +1718,31 @@ export const TakeProfit = {
809
1718
  note: props.Order.action.note !== undefined ? props.Order.action.note : undefined,
810
1719
  status: props.Order.action.status !== undefined ? props.Order.action.status : undefined,
811
1720
  fee: props.Order.action.fee !== undefined ? props.Order.action.fee : undefined,
1721
+ trade: props.Order.action.trade ?
1722
+ typeof props.Order.action.trade === 'object' && Object.keys(props.Order.action.trade).length === 1 && Object.keys(props.Order.action.trade)[0] === 'id'
1723
+ ? { connect: {
1724
+ id: props.Order.action.trade.id
1725
+ }
1726
+ }
1727
+ : { connectOrCreate: {
1728
+ where: {
1729
+ id: props.Order.action.trade.id !== undefined ? props.Order.action.trade.id : undefined,
1730
+ },
1731
+ create: {
1732
+ qty: props.Order.action.trade.qty !== undefined ? props.Order.action.trade.qty : undefined,
1733
+ price: props.Order.action.trade.price !== undefined ? props.Order.action.trade.price : undefined,
1734
+ total: props.Order.action.trade.total !== undefined ? props.Order.action.trade.total : undefined,
1735
+ optionType: props.Order.action.trade.optionType !== undefined ? props.Order.action.trade.optionType : undefined,
1736
+ signal: props.Order.action.trade.signal !== undefined ? props.Order.action.trade.signal : undefined,
1737
+ strategy: props.Order.action.trade.strategy !== undefined ? props.Order.action.trade.strategy : undefined,
1738
+ analysis: props.Order.action.trade.analysis !== undefined ? props.Order.action.trade.analysis : undefined,
1739
+ summary: props.Order.action.trade.summary !== undefined ? props.Order.action.trade.summary : undefined,
1740
+ confidence: props.Order.action.trade.confidence !== undefined ? props.Order.action.trade.confidence : undefined,
1741
+ timestamp: props.Order.action.trade.timestamp !== undefined ? props.Order.action.trade.timestamp : undefined,
1742
+ status: props.Order.action.trade.status !== undefined ? props.Order.action.trade.status : undefined,
1743
+ },
1744
+ }
1745
+ } : undefined,
812
1746
  },
813
1747
  }
814
1748
  } : undefined,
@@ -880,6 +1814,77 @@ export const TakeProfit = {
880
1814
  exDividendDate: props.Order.asset.exDividendDate !== undefined ? props.Order.asset.exDividendDate : undefined,
881
1815
  askPrice: props.Order.asset.askPrice !== undefined ? props.Order.asset.askPrice : undefined,
882
1816
  bidPrice: props.Order.asset.bidPrice !== undefined ? props.Order.asset.bidPrice : undefined,
1817
+ trades: props.Order.asset.trades ?
1818
+ Array.isArray(props.Order.asset.trades) && props.Order.asset.trades.length > 0 && props.Order.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1819
+ connect: props.Order.asset.trades.map((item) => ({
1820
+ id: item.id
1821
+ }))
1822
+ }
1823
+ : { connectOrCreate: props.Order.asset.trades.map((item) => ({
1824
+ where: {
1825
+ id: item.id !== undefined ? item.id : undefined,
1826
+ },
1827
+ create: {
1828
+ qty: item.qty !== undefined ? item.qty : undefined,
1829
+ price: item.price !== undefined ? item.price : undefined,
1830
+ total: item.total !== undefined ? item.total : undefined,
1831
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1832
+ signal: item.signal !== undefined ? item.signal : undefined,
1833
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
1834
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
1835
+ summary: item.summary !== undefined ? item.summary : undefined,
1836
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
1837
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
1838
+ status: item.status !== undefined ? item.status : undefined,
1839
+ },
1840
+ }))
1841
+ } : undefined,
1842
+ positions: props.Order.asset.positions ?
1843
+ Array.isArray(props.Order.asset.positions) && props.Order.asset.positions.length > 0 && props.Order.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1844
+ connect: props.Order.asset.positions.map((item) => ({
1845
+ id: item.id
1846
+ }))
1847
+ }
1848
+ : { connectOrCreate: props.Order.asset.positions.map((item) => ({
1849
+ where: {
1850
+ id: item.id !== undefined ? item.id : undefined,
1851
+ },
1852
+ create: {
1853
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1854
+ qty: item.qty !== undefined ? item.qty : undefined,
1855
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1856
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1857
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1858
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1859
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1860
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1861
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1862
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1863
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1864
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1865
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1866
+ },
1867
+ }))
1868
+ } : undefined,
1869
+ newsMentions: props.Order.asset.newsMentions ?
1870
+ Array.isArray(props.Order.asset.newsMentions) && props.Order.asset.newsMentions.length > 0 && props.Order.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1871
+ connect: props.Order.asset.newsMentions.map((item) => ({
1872
+ id: item.id
1873
+ }))
1874
+ }
1875
+ : { connectOrCreate: props.Order.asset.newsMentions.map((item) => ({
1876
+ where: {
1877
+ id: item.id !== undefined ? item.id : undefined,
1878
+ url: item.url !== undefined ? item.url : undefined,
1879
+ },
1880
+ create: {
1881
+ url: item.url !== undefined ? item.url : undefined,
1882
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1883
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1884
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1885
+ },
1886
+ }))
1887
+ } : undefined,
883
1888
  },
884
1889
  }
885
1890
  } : undefined,
@@ -920,18 +1925,10 @@ export const TakeProfit = {
920
1925
  }`;
921
1926
  const variables = props.map(prop => ({
922
1927
  where: {
923
- id: prop.id !== undefined ? {
924
- equals: prop.id
925
- } : undefined,
926
- orderId: prop.orderId !== undefined ? {
927
- equals: prop.orderId
928
- } : undefined,
929
- createdAt: prop.createdAt !== undefined ? {
930
- equals: prop.createdAt
931
- } : undefined,
932
- updatedAt: prop.updatedAt !== undefined ? {
933
- equals: prop.updatedAt
934
- } : undefined,
1928
+ id: prop.id !== undefined ? prop.id : undefined,
1929
+ orderId: prop.orderId !== undefined ? prop.orderId : undefined,
1930
+ createdAt: prop.createdAt !== undefined ? prop.createdAt : undefined,
1931
+ updatedAt: prop.updatedAt !== undefined ? prop.updatedAt : undefined,
935
1932
  },
936
1933
  data: {
937
1934
  id: prop.id !== undefined ? {
@@ -1088,6 +2085,222 @@ export const TakeProfit = {
1088
2085
  volumeThreshold: prop.Order.alpacaAccount.volumeThreshold !== undefined ? {
1089
2086
  set: prop.Order.alpacaAccount.volumeThreshold
1090
2087
  } : undefined,
2088
+ user: prop.Order.alpacaAccount.user ? {
2089
+ upsert: {
2090
+ where: {
2091
+ id: prop.Order.alpacaAccount.user.id !== undefined ? {
2092
+ equals: prop.Order.alpacaAccount.user.id
2093
+ } : undefined,
2094
+ name: prop.Order.alpacaAccount.user.name !== undefined ? {
2095
+ equals: prop.Order.alpacaAccount.user.name
2096
+ } : undefined,
2097
+ email: prop.Order.alpacaAccount.user.email !== undefined ? {
2098
+ equals: prop.Order.alpacaAccount.user.email
2099
+ } : undefined,
2100
+ },
2101
+ update: {
2102
+ id: prop.Order.alpacaAccount.user.id !== undefined ? {
2103
+ set: prop.Order.alpacaAccount.user.id
2104
+ } : undefined,
2105
+ name: prop.Order.alpacaAccount.user.name !== undefined ? {
2106
+ set: prop.Order.alpacaAccount.user.name
2107
+ } : undefined,
2108
+ email: prop.Order.alpacaAccount.user.email !== undefined ? {
2109
+ set: prop.Order.alpacaAccount.user.email
2110
+ } : undefined,
2111
+ emailVerified: prop.Order.alpacaAccount.user.emailVerified !== undefined ? {
2112
+ set: prop.Order.alpacaAccount.user.emailVerified
2113
+ } : undefined,
2114
+ image: prop.Order.alpacaAccount.user.image !== undefined ? {
2115
+ set: prop.Order.alpacaAccount.user.image
2116
+ } : undefined,
2117
+ role: prop.Order.alpacaAccount.user.role !== undefined ? {
2118
+ set: prop.Order.alpacaAccount.user.role
2119
+ } : undefined,
2120
+ bio: prop.Order.alpacaAccount.user.bio !== undefined ? {
2121
+ set: prop.Order.alpacaAccount.user.bio
2122
+ } : undefined,
2123
+ jobTitle: prop.Order.alpacaAccount.user.jobTitle !== undefined ? {
2124
+ set: prop.Order.alpacaAccount.user.jobTitle
2125
+ } : undefined,
2126
+ currentAccount: prop.Order.alpacaAccount.user.currentAccount !== undefined ? {
2127
+ set: prop.Order.alpacaAccount.user.currentAccount
2128
+ } : undefined,
2129
+ plan: prop.Order.alpacaAccount.user.plan !== undefined ? {
2130
+ set: prop.Order.alpacaAccount.user.plan
2131
+ } : undefined,
2132
+ openaiAPIKey: prop.Order.alpacaAccount.user.openaiAPIKey !== undefined ? {
2133
+ set: prop.Order.alpacaAccount.user.openaiAPIKey
2134
+ } : undefined,
2135
+ openaiModel: prop.Order.alpacaAccount.user.openaiModel !== undefined ? {
2136
+ set: prop.Order.alpacaAccount.user.openaiModel
2137
+ } : undefined,
2138
+ },
2139
+ create: {
2140
+ name: prop.Order.alpacaAccount.user.name !== undefined ? prop.Order.alpacaAccount.user.name : undefined,
2141
+ email: prop.Order.alpacaAccount.user.email !== undefined ? prop.Order.alpacaAccount.user.email : undefined,
2142
+ emailVerified: prop.Order.alpacaAccount.user.emailVerified !== undefined ? prop.Order.alpacaAccount.user.emailVerified : undefined,
2143
+ image: prop.Order.alpacaAccount.user.image !== undefined ? prop.Order.alpacaAccount.user.image : undefined,
2144
+ role: prop.Order.alpacaAccount.user.role !== undefined ? prop.Order.alpacaAccount.user.role : undefined,
2145
+ bio: prop.Order.alpacaAccount.user.bio !== undefined ? prop.Order.alpacaAccount.user.bio : undefined,
2146
+ jobTitle: prop.Order.alpacaAccount.user.jobTitle !== undefined ? prop.Order.alpacaAccount.user.jobTitle : undefined,
2147
+ currentAccount: prop.Order.alpacaAccount.user.currentAccount !== undefined ? prop.Order.alpacaAccount.user.currentAccount : undefined,
2148
+ plan: prop.Order.alpacaAccount.user.plan !== undefined ? prop.Order.alpacaAccount.user.plan : undefined,
2149
+ openaiAPIKey: prop.Order.alpacaAccount.user.openaiAPIKey !== undefined ? prop.Order.alpacaAccount.user.openaiAPIKey : undefined,
2150
+ openaiModel: prop.Order.alpacaAccount.user.openaiModel !== undefined ? prop.Order.alpacaAccount.user.openaiModel : undefined,
2151
+ },
2152
+ }
2153
+ } : undefined,
2154
+ trades: prop.Order.alpacaAccount.trades ? {
2155
+ upsert: prop.Order.alpacaAccount.trades.map((item) => ({
2156
+ where: {
2157
+ id: item.id !== undefined ? item.id : undefined,
2158
+ },
2159
+ update: {
2160
+ id: item.id !== undefined ? {
2161
+ set: item.id
2162
+ } : undefined,
2163
+ qty: item.qty !== undefined ? {
2164
+ set: item.qty
2165
+ } : undefined,
2166
+ price: item.price !== undefined ? {
2167
+ set: item.price
2168
+ } : undefined,
2169
+ total: item.total !== undefined ? {
2170
+ set: item.total
2171
+ } : undefined,
2172
+ optionType: item.optionType !== undefined ? {
2173
+ set: item.optionType
2174
+ } : undefined,
2175
+ signal: item.signal !== undefined ? {
2176
+ set: item.signal
2177
+ } : undefined,
2178
+ strategy: item.strategy !== undefined ? {
2179
+ set: item.strategy
2180
+ } : undefined,
2181
+ analysis: item.analysis !== undefined ? {
2182
+ set: item.analysis
2183
+ } : undefined,
2184
+ summary: item.summary !== undefined ? {
2185
+ set: item.summary
2186
+ } : undefined,
2187
+ confidence: item.confidence !== undefined ? {
2188
+ set: item.confidence
2189
+ } : undefined,
2190
+ timestamp: item.timestamp !== undefined ? {
2191
+ set: item.timestamp
2192
+ } : undefined,
2193
+ status: item.status !== undefined ? {
2194
+ set: item.status
2195
+ } : undefined,
2196
+ },
2197
+ create: {
2198
+ qty: item.qty !== undefined ? item.qty : undefined,
2199
+ price: item.price !== undefined ? item.price : undefined,
2200
+ total: item.total !== undefined ? item.total : undefined,
2201
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2202
+ signal: item.signal !== undefined ? item.signal : undefined,
2203
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2204
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2205
+ summary: item.summary !== undefined ? item.summary : undefined,
2206
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2207
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2208
+ status: item.status !== undefined ? item.status : undefined,
2209
+ },
2210
+ }))
2211
+ } : undefined,
2212
+ positions: prop.Order.alpacaAccount.positions ? {
2213
+ upsert: prop.Order.alpacaAccount.positions.map((item) => ({
2214
+ where: {
2215
+ id: item.id !== undefined ? item.id : undefined,
2216
+ },
2217
+ update: {
2218
+ id: item.id !== undefined ? {
2219
+ set: item.id
2220
+ } : undefined,
2221
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
2222
+ set: item.averageEntryPrice
2223
+ } : undefined,
2224
+ qty: item.qty !== undefined ? {
2225
+ set: item.qty
2226
+ } : undefined,
2227
+ qtyAvailable: item.qtyAvailable !== undefined ? {
2228
+ set: item.qtyAvailable
2229
+ } : undefined,
2230
+ marketValue: item.marketValue !== undefined ? {
2231
+ set: item.marketValue
2232
+ } : undefined,
2233
+ costBasis: item.costBasis !== undefined ? {
2234
+ set: item.costBasis
2235
+ } : undefined,
2236
+ unrealizedPL: item.unrealizedPL !== undefined ? {
2237
+ set: item.unrealizedPL
2238
+ } : undefined,
2239
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
2240
+ set: item.unrealizedPLPC
2241
+ } : undefined,
2242
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
2243
+ set: item.unrealisedIntradayPL
2244
+ } : undefined,
2245
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
2246
+ set: item.unrealisedIntradayPLPC
2247
+ } : undefined,
2248
+ currentPrice: item.currentPrice !== undefined ? {
2249
+ set: item.currentPrice
2250
+ } : undefined,
2251
+ lastTradePrice: item.lastTradePrice !== undefined ? {
2252
+ set: item.lastTradePrice
2253
+ } : undefined,
2254
+ changeToday: item.changeToday !== undefined ? {
2255
+ set: item.changeToday
2256
+ } : undefined,
2257
+ assetMarginable: item.assetMarginable !== undefined ? {
2258
+ set: item.assetMarginable
2259
+ } : undefined,
2260
+ },
2261
+ create: {
2262
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2263
+ qty: item.qty !== undefined ? item.qty : undefined,
2264
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2265
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2266
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2267
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2268
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2269
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2270
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2271
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2272
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2273
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2274
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2275
+ },
2276
+ }))
2277
+ } : undefined,
2278
+ alerts: prop.Order.alpacaAccount.alerts ? {
2279
+ upsert: prop.Order.alpacaAccount.alerts.map((item) => ({
2280
+ where: {
2281
+ id: item.id !== undefined ? item.id : undefined,
2282
+ },
2283
+ update: {
2284
+ id: item.id !== undefined ? {
2285
+ set: item.id
2286
+ } : undefined,
2287
+ message: item.message !== undefined ? {
2288
+ set: item.message
2289
+ } : undefined,
2290
+ type: item.type !== undefined ? {
2291
+ set: item.type
2292
+ } : undefined,
2293
+ isRead: item.isRead !== undefined ? {
2294
+ set: item.isRead
2295
+ } : undefined,
2296
+ },
2297
+ create: {
2298
+ message: item.message !== undefined ? item.message : undefined,
2299
+ type: item.type !== undefined ? item.type : undefined,
2300
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
2301
+ },
2302
+ }))
2303
+ } : undefined,
1091
2304
  },
1092
2305
  create: {
1093
2306
  type: prop.Order.alpacaAccount.type !== undefined ? prop.Order.alpacaAccount.type : undefined,
@@ -1099,6 +2312,104 @@ export const TakeProfit = {
1099
2312
  maxOrderSize: prop.Order.alpacaAccount.maxOrderSize !== undefined ? prop.Order.alpacaAccount.maxOrderSize : undefined,
1100
2313
  minPercentageChange: prop.Order.alpacaAccount.minPercentageChange !== undefined ? prop.Order.alpacaAccount.minPercentageChange : undefined,
1101
2314
  volumeThreshold: prop.Order.alpacaAccount.volumeThreshold !== undefined ? prop.Order.alpacaAccount.volumeThreshold : undefined,
2315
+ user: prop.Order.alpacaAccount.user ?
2316
+ typeof prop.Order.alpacaAccount.user === 'object' && Object.keys(prop.Order.alpacaAccount.user).length === 1 && Object.keys(prop.Order.alpacaAccount.user)[0] === 'id'
2317
+ ? { connect: {
2318
+ id: prop.Order.alpacaAccount.user.id
2319
+ }
2320
+ }
2321
+ : { connectOrCreate: {
2322
+ where: {
2323
+ id: prop.Order.alpacaAccount.user.id !== undefined ? prop.Order.alpacaAccount.user.id : undefined,
2324
+ email: prop.Order.alpacaAccount.user.email !== undefined ? prop.Order.alpacaAccount.user.email : undefined,
2325
+ name: prop.Order.alpacaAccount.user.name !== undefined ? {
2326
+ equals: prop.Order.alpacaAccount.user.name
2327
+ } : undefined,
2328
+ },
2329
+ create: {
2330
+ name: prop.Order.alpacaAccount.user.name !== undefined ? prop.Order.alpacaAccount.user.name : undefined,
2331
+ email: prop.Order.alpacaAccount.user.email !== undefined ? prop.Order.alpacaAccount.user.email : undefined,
2332
+ emailVerified: prop.Order.alpacaAccount.user.emailVerified !== undefined ? prop.Order.alpacaAccount.user.emailVerified : undefined,
2333
+ image: prop.Order.alpacaAccount.user.image !== undefined ? prop.Order.alpacaAccount.user.image : undefined,
2334
+ role: prop.Order.alpacaAccount.user.role !== undefined ? prop.Order.alpacaAccount.user.role : undefined,
2335
+ bio: prop.Order.alpacaAccount.user.bio !== undefined ? prop.Order.alpacaAccount.user.bio : undefined,
2336
+ jobTitle: prop.Order.alpacaAccount.user.jobTitle !== undefined ? prop.Order.alpacaAccount.user.jobTitle : undefined,
2337
+ currentAccount: prop.Order.alpacaAccount.user.currentAccount !== undefined ? prop.Order.alpacaAccount.user.currentAccount : undefined,
2338
+ plan: prop.Order.alpacaAccount.user.plan !== undefined ? prop.Order.alpacaAccount.user.plan : undefined,
2339
+ openaiAPIKey: prop.Order.alpacaAccount.user.openaiAPIKey !== undefined ? prop.Order.alpacaAccount.user.openaiAPIKey : undefined,
2340
+ openaiModel: prop.Order.alpacaAccount.user.openaiModel !== undefined ? prop.Order.alpacaAccount.user.openaiModel : undefined,
2341
+ },
2342
+ }
2343
+ } : undefined,
2344
+ trades: prop.Order.alpacaAccount.trades ?
2345
+ Array.isArray(prop.Order.alpacaAccount.trades) && prop.Order.alpacaAccount.trades.length > 0 && prop.Order.alpacaAccount.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2346
+ connect: prop.Order.alpacaAccount.trades.map((item) => ({
2347
+ id: item.id
2348
+ }))
2349
+ }
2350
+ : { connectOrCreate: prop.Order.alpacaAccount.trades.map((item) => ({
2351
+ where: {
2352
+ id: item.id !== undefined ? item.id : undefined,
2353
+ },
2354
+ create: {
2355
+ qty: item.qty !== undefined ? item.qty : undefined,
2356
+ price: item.price !== undefined ? item.price : undefined,
2357
+ total: item.total !== undefined ? item.total : undefined,
2358
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2359
+ signal: item.signal !== undefined ? item.signal : undefined,
2360
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2361
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2362
+ summary: item.summary !== undefined ? item.summary : undefined,
2363
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2364
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2365
+ status: item.status !== undefined ? item.status : undefined,
2366
+ },
2367
+ }))
2368
+ } : undefined,
2369
+ positions: prop.Order.alpacaAccount.positions ?
2370
+ Array.isArray(prop.Order.alpacaAccount.positions) && prop.Order.alpacaAccount.positions.length > 0 && prop.Order.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2371
+ connect: prop.Order.alpacaAccount.positions.map((item) => ({
2372
+ id: item.id
2373
+ }))
2374
+ }
2375
+ : { connectOrCreate: prop.Order.alpacaAccount.positions.map((item) => ({
2376
+ where: {
2377
+ id: item.id !== undefined ? item.id : undefined,
2378
+ },
2379
+ create: {
2380
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2381
+ qty: item.qty !== undefined ? item.qty : undefined,
2382
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2383
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2384
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2385
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2386
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2387
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2388
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2389
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2390
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2391
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2392
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2393
+ },
2394
+ }))
2395
+ } : undefined,
2396
+ alerts: prop.Order.alpacaAccount.alerts ?
2397
+ Array.isArray(prop.Order.alpacaAccount.alerts) && prop.Order.alpacaAccount.alerts.length > 0 && prop.Order.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2398
+ connect: prop.Order.alpacaAccount.alerts.map((item) => ({
2399
+ id: item.id
2400
+ }))
2401
+ }
2402
+ : { connectOrCreate: prop.Order.alpacaAccount.alerts.map((item) => ({
2403
+ where: {
2404
+ id: item.id !== undefined ? item.id : undefined,
2405
+ },
2406
+ create: {
2407
+ message: item.message !== undefined ? item.message : undefined,
2408
+ type: item.type !== undefined ? item.type : undefined,
2409
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
2410
+ },
2411
+ }))
2412
+ } : undefined,
1102
2413
  },
1103
2414
  }
1104
2415
  } : undefined,
@@ -1128,6 +2439,66 @@ export const TakeProfit = {
1128
2439
  fee: prop.Order.action.fee !== undefined ? {
1129
2440
  set: prop.Order.action.fee
1130
2441
  } : undefined,
2442
+ trade: prop.Order.action.trade ? {
2443
+ upsert: {
2444
+ where: {
2445
+ id: prop.Order.action.trade.id !== undefined ? {
2446
+ equals: prop.Order.action.trade.id
2447
+ } : undefined,
2448
+ },
2449
+ update: {
2450
+ id: prop.Order.action.trade.id !== undefined ? {
2451
+ set: prop.Order.action.trade.id
2452
+ } : undefined,
2453
+ qty: prop.Order.action.trade.qty !== undefined ? {
2454
+ set: prop.Order.action.trade.qty
2455
+ } : undefined,
2456
+ price: prop.Order.action.trade.price !== undefined ? {
2457
+ set: prop.Order.action.trade.price
2458
+ } : undefined,
2459
+ total: prop.Order.action.trade.total !== undefined ? {
2460
+ set: prop.Order.action.trade.total
2461
+ } : undefined,
2462
+ optionType: prop.Order.action.trade.optionType !== undefined ? {
2463
+ set: prop.Order.action.trade.optionType
2464
+ } : undefined,
2465
+ signal: prop.Order.action.trade.signal !== undefined ? {
2466
+ set: prop.Order.action.trade.signal
2467
+ } : undefined,
2468
+ strategy: prop.Order.action.trade.strategy !== undefined ? {
2469
+ set: prop.Order.action.trade.strategy
2470
+ } : undefined,
2471
+ analysis: prop.Order.action.trade.analysis !== undefined ? {
2472
+ set: prop.Order.action.trade.analysis
2473
+ } : undefined,
2474
+ summary: prop.Order.action.trade.summary !== undefined ? {
2475
+ set: prop.Order.action.trade.summary
2476
+ } : undefined,
2477
+ confidence: prop.Order.action.trade.confidence !== undefined ? {
2478
+ set: prop.Order.action.trade.confidence
2479
+ } : undefined,
2480
+ timestamp: prop.Order.action.trade.timestamp !== undefined ? {
2481
+ set: prop.Order.action.trade.timestamp
2482
+ } : undefined,
2483
+ status: prop.Order.action.trade.status !== undefined ? {
2484
+ set: prop.Order.action.trade.status
2485
+ } : undefined,
2486
+ },
2487
+ create: {
2488
+ qty: prop.Order.action.trade.qty !== undefined ? prop.Order.action.trade.qty : undefined,
2489
+ price: prop.Order.action.trade.price !== undefined ? prop.Order.action.trade.price : undefined,
2490
+ total: prop.Order.action.trade.total !== undefined ? prop.Order.action.trade.total : undefined,
2491
+ optionType: prop.Order.action.trade.optionType !== undefined ? prop.Order.action.trade.optionType : undefined,
2492
+ signal: prop.Order.action.trade.signal !== undefined ? prop.Order.action.trade.signal : undefined,
2493
+ strategy: prop.Order.action.trade.strategy !== undefined ? prop.Order.action.trade.strategy : undefined,
2494
+ analysis: prop.Order.action.trade.analysis !== undefined ? prop.Order.action.trade.analysis : undefined,
2495
+ summary: prop.Order.action.trade.summary !== undefined ? prop.Order.action.trade.summary : undefined,
2496
+ confidence: prop.Order.action.trade.confidence !== undefined ? prop.Order.action.trade.confidence : undefined,
2497
+ timestamp: prop.Order.action.trade.timestamp !== undefined ? prop.Order.action.trade.timestamp : undefined,
2498
+ status: prop.Order.action.trade.status !== undefined ? prop.Order.action.trade.status : undefined,
2499
+ },
2500
+ }
2501
+ } : undefined,
1131
2502
  },
1132
2503
  create: {
1133
2504
  sequence: prop.Order.action.sequence !== undefined ? prop.Order.action.sequence : undefined,
@@ -1135,6 +2506,31 @@ export const TakeProfit = {
1135
2506
  note: prop.Order.action.note !== undefined ? prop.Order.action.note : undefined,
1136
2507
  status: prop.Order.action.status !== undefined ? prop.Order.action.status : undefined,
1137
2508
  fee: prop.Order.action.fee !== undefined ? prop.Order.action.fee : undefined,
2509
+ trade: prop.Order.action.trade ?
2510
+ typeof prop.Order.action.trade === 'object' && Object.keys(prop.Order.action.trade).length === 1 && Object.keys(prop.Order.action.trade)[0] === 'id'
2511
+ ? { connect: {
2512
+ id: prop.Order.action.trade.id
2513
+ }
2514
+ }
2515
+ : { connectOrCreate: {
2516
+ where: {
2517
+ id: prop.Order.action.trade.id !== undefined ? prop.Order.action.trade.id : undefined,
2518
+ },
2519
+ create: {
2520
+ qty: prop.Order.action.trade.qty !== undefined ? prop.Order.action.trade.qty : undefined,
2521
+ price: prop.Order.action.trade.price !== undefined ? prop.Order.action.trade.price : undefined,
2522
+ total: prop.Order.action.trade.total !== undefined ? prop.Order.action.trade.total : undefined,
2523
+ optionType: prop.Order.action.trade.optionType !== undefined ? prop.Order.action.trade.optionType : undefined,
2524
+ signal: prop.Order.action.trade.signal !== undefined ? prop.Order.action.trade.signal : undefined,
2525
+ strategy: prop.Order.action.trade.strategy !== undefined ? prop.Order.action.trade.strategy : undefined,
2526
+ analysis: prop.Order.action.trade.analysis !== undefined ? prop.Order.action.trade.analysis : undefined,
2527
+ summary: prop.Order.action.trade.summary !== undefined ? prop.Order.action.trade.summary : undefined,
2528
+ confidence: prop.Order.action.trade.confidence !== undefined ? prop.Order.action.trade.confidence : undefined,
2529
+ timestamp: prop.Order.action.trade.timestamp !== undefined ? prop.Order.action.trade.timestamp : undefined,
2530
+ status: prop.Order.action.trade.status !== undefined ? prop.Order.action.trade.status : undefined,
2531
+ },
2532
+ }
2533
+ } : undefined,
1138
2534
  },
1139
2535
  }
1140
2536
  } : undefined,
@@ -1320,6 +2716,161 @@ export const TakeProfit = {
1320
2716
  bidPrice: prop.Order.asset.bidPrice !== undefined ? {
1321
2717
  set: prop.Order.asset.bidPrice
1322
2718
  } : undefined,
2719
+ trades: prop.Order.asset.trades ? {
2720
+ upsert: prop.Order.asset.trades.map((item) => ({
2721
+ where: {
2722
+ id: item.id !== undefined ? item.id : undefined,
2723
+ },
2724
+ update: {
2725
+ id: item.id !== undefined ? {
2726
+ set: item.id
2727
+ } : undefined,
2728
+ qty: item.qty !== undefined ? {
2729
+ set: item.qty
2730
+ } : undefined,
2731
+ price: item.price !== undefined ? {
2732
+ set: item.price
2733
+ } : undefined,
2734
+ total: item.total !== undefined ? {
2735
+ set: item.total
2736
+ } : undefined,
2737
+ optionType: item.optionType !== undefined ? {
2738
+ set: item.optionType
2739
+ } : undefined,
2740
+ signal: item.signal !== undefined ? {
2741
+ set: item.signal
2742
+ } : undefined,
2743
+ strategy: item.strategy !== undefined ? {
2744
+ set: item.strategy
2745
+ } : undefined,
2746
+ analysis: item.analysis !== undefined ? {
2747
+ set: item.analysis
2748
+ } : undefined,
2749
+ summary: item.summary !== undefined ? {
2750
+ set: item.summary
2751
+ } : undefined,
2752
+ confidence: item.confidence !== undefined ? {
2753
+ set: item.confidence
2754
+ } : undefined,
2755
+ timestamp: item.timestamp !== undefined ? {
2756
+ set: item.timestamp
2757
+ } : undefined,
2758
+ status: item.status !== undefined ? {
2759
+ set: item.status
2760
+ } : undefined,
2761
+ },
2762
+ create: {
2763
+ qty: item.qty !== undefined ? item.qty : undefined,
2764
+ price: item.price !== undefined ? item.price : undefined,
2765
+ total: item.total !== undefined ? item.total : undefined,
2766
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2767
+ signal: item.signal !== undefined ? item.signal : undefined,
2768
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2769
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2770
+ summary: item.summary !== undefined ? item.summary : undefined,
2771
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2772
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2773
+ status: item.status !== undefined ? item.status : undefined,
2774
+ },
2775
+ }))
2776
+ } : undefined,
2777
+ positions: prop.Order.asset.positions ? {
2778
+ upsert: prop.Order.asset.positions.map((item) => ({
2779
+ where: {
2780
+ id: item.id !== undefined ? item.id : undefined,
2781
+ },
2782
+ update: {
2783
+ id: item.id !== undefined ? {
2784
+ set: item.id
2785
+ } : undefined,
2786
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
2787
+ set: item.averageEntryPrice
2788
+ } : undefined,
2789
+ qty: item.qty !== undefined ? {
2790
+ set: item.qty
2791
+ } : undefined,
2792
+ qtyAvailable: item.qtyAvailable !== undefined ? {
2793
+ set: item.qtyAvailable
2794
+ } : undefined,
2795
+ marketValue: item.marketValue !== undefined ? {
2796
+ set: item.marketValue
2797
+ } : undefined,
2798
+ costBasis: item.costBasis !== undefined ? {
2799
+ set: item.costBasis
2800
+ } : undefined,
2801
+ unrealizedPL: item.unrealizedPL !== undefined ? {
2802
+ set: item.unrealizedPL
2803
+ } : undefined,
2804
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
2805
+ set: item.unrealizedPLPC
2806
+ } : undefined,
2807
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
2808
+ set: item.unrealisedIntradayPL
2809
+ } : undefined,
2810
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
2811
+ set: item.unrealisedIntradayPLPC
2812
+ } : undefined,
2813
+ currentPrice: item.currentPrice !== undefined ? {
2814
+ set: item.currentPrice
2815
+ } : undefined,
2816
+ lastTradePrice: item.lastTradePrice !== undefined ? {
2817
+ set: item.lastTradePrice
2818
+ } : undefined,
2819
+ changeToday: item.changeToday !== undefined ? {
2820
+ set: item.changeToday
2821
+ } : undefined,
2822
+ assetMarginable: item.assetMarginable !== undefined ? {
2823
+ set: item.assetMarginable
2824
+ } : undefined,
2825
+ },
2826
+ create: {
2827
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2828
+ qty: item.qty !== undefined ? item.qty : undefined,
2829
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2830
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2831
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2832
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2833
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2834
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2835
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2836
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2837
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2838
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2839
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2840
+ },
2841
+ }))
2842
+ } : undefined,
2843
+ newsMentions: prop.Order.asset.newsMentions ? {
2844
+ upsert: prop.Order.asset.newsMentions.map((item) => ({
2845
+ where: {
2846
+ id: item.id !== undefined ? item.id : undefined,
2847
+ url: item.url !== undefined ? item.url : undefined,
2848
+ },
2849
+ update: {
2850
+ id: item.id !== undefined ? {
2851
+ set: item.id
2852
+ } : undefined,
2853
+ url: item.url !== undefined ? {
2854
+ set: item.url
2855
+ } : undefined,
2856
+ relevancyScore: item.relevancyScore !== undefined ? {
2857
+ set: item.relevancyScore
2858
+ } : undefined,
2859
+ sentimentScore: item.sentimentScore !== undefined ? {
2860
+ set: item.sentimentScore
2861
+ } : undefined,
2862
+ sentimentLabel: item.sentimentLabel !== undefined ? {
2863
+ set: item.sentimentLabel
2864
+ } : undefined,
2865
+ },
2866
+ create: {
2867
+ url: item.url !== undefined ? item.url : undefined,
2868
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
2869
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
2870
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
2871
+ },
2872
+ }))
2873
+ } : undefined,
1323
2874
  },
1324
2875
  create: {
1325
2876
  symbol: prop.Order.asset.symbol !== undefined ? prop.Order.asset.symbol : undefined,
@@ -1377,6 +2928,77 @@ export const TakeProfit = {
1377
2928
  exDividendDate: prop.Order.asset.exDividendDate !== undefined ? prop.Order.asset.exDividendDate : undefined,
1378
2929
  askPrice: prop.Order.asset.askPrice !== undefined ? prop.Order.asset.askPrice : undefined,
1379
2930
  bidPrice: prop.Order.asset.bidPrice !== undefined ? prop.Order.asset.bidPrice : undefined,
2931
+ trades: prop.Order.asset.trades ?
2932
+ Array.isArray(prop.Order.asset.trades) && prop.Order.asset.trades.length > 0 && prop.Order.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2933
+ connect: prop.Order.asset.trades.map((item) => ({
2934
+ id: item.id
2935
+ }))
2936
+ }
2937
+ : { connectOrCreate: prop.Order.asset.trades.map((item) => ({
2938
+ where: {
2939
+ id: item.id !== undefined ? item.id : undefined,
2940
+ },
2941
+ create: {
2942
+ qty: item.qty !== undefined ? item.qty : undefined,
2943
+ price: item.price !== undefined ? item.price : undefined,
2944
+ total: item.total !== undefined ? item.total : undefined,
2945
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2946
+ signal: item.signal !== undefined ? item.signal : undefined,
2947
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2948
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2949
+ summary: item.summary !== undefined ? item.summary : undefined,
2950
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2951
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2952
+ status: item.status !== undefined ? item.status : undefined,
2953
+ },
2954
+ }))
2955
+ } : undefined,
2956
+ positions: prop.Order.asset.positions ?
2957
+ Array.isArray(prop.Order.asset.positions) && prop.Order.asset.positions.length > 0 && prop.Order.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2958
+ connect: prop.Order.asset.positions.map((item) => ({
2959
+ id: item.id
2960
+ }))
2961
+ }
2962
+ : { connectOrCreate: prop.Order.asset.positions.map((item) => ({
2963
+ where: {
2964
+ id: item.id !== undefined ? item.id : undefined,
2965
+ },
2966
+ create: {
2967
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2968
+ qty: item.qty !== undefined ? item.qty : undefined,
2969
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2970
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2971
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2972
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2973
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2974
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2975
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2976
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2977
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2978
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2979
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2980
+ },
2981
+ }))
2982
+ } : undefined,
2983
+ newsMentions: prop.Order.asset.newsMentions ?
2984
+ Array.isArray(prop.Order.asset.newsMentions) && prop.Order.asset.newsMentions.length > 0 && prop.Order.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2985
+ connect: prop.Order.asset.newsMentions.map((item) => ({
2986
+ id: item.id
2987
+ }))
2988
+ }
2989
+ : { connectOrCreate: prop.Order.asset.newsMentions.map((item) => ({
2990
+ where: {
2991
+ id: item.id !== undefined ? item.id : undefined,
2992
+ url: item.url !== undefined ? item.url : undefined,
2993
+ },
2994
+ create: {
2995
+ url: item.url !== undefined ? item.url : undefined,
2996
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
2997
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
2998
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
2999
+ },
3000
+ }))
3001
+ } : undefined,
1380
3002
  },
1381
3003
  }
1382
3004
  } : undefined,
@@ -1440,6 +3062,104 @@ export const TakeProfit = {
1440
3062
  maxOrderSize: prop.Order.alpacaAccount.maxOrderSize !== undefined ? prop.Order.alpacaAccount.maxOrderSize : undefined,
1441
3063
  minPercentageChange: prop.Order.alpacaAccount.minPercentageChange !== undefined ? prop.Order.alpacaAccount.minPercentageChange : undefined,
1442
3064
  volumeThreshold: prop.Order.alpacaAccount.volumeThreshold !== undefined ? prop.Order.alpacaAccount.volumeThreshold : undefined,
3065
+ user: prop.Order.alpacaAccount.user ?
3066
+ typeof prop.Order.alpacaAccount.user === 'object' && Object.keys(prop.Order.alpacaAccount.user).length === 1 && Object.keys(prop.Order.alpacaAccount.user)[0] === 'id'
3067
+ ? { connect: {
3068
+ id: prop.Order.alpacaAccount.user.id
3069
+ }
3070
+ }
3071
+ : { connectOrCreate: {
3072
+ where: {
3073
+ id: prop.Order.alpacaAccount.user.id !== undefined ? prop.Order.alpacaAccount.user.id : undefined,
3074
+ email: prop.Order.alpacaAccount.user.email !== undefined ? prop.Order.alpacaAccount.user.email : undefined,
3075
+ name: prop.Order.alpacaAccount.user.name !== undefined ? {
3076
+ equals: prop.Order.alpacaAccount.user.name
3077
+ } : undefined,
3078
+ },
3079
+ create: {
3080
+ name: prop.Order.alpacaAccount.user.name !== undefined ? prop.Order.alpacaAccount.user.name : undefined,
3081
+ email: prop.Order.alpacaAccount.user.email !== undefined ? prop.Order.alpacaAccount.user.email : undefined,
3082
+ emailVerified: prop.Order.alpacaAccount.user.emailVerified !== undefined ? prop.Order.alpacaAccount.user.emailVerified : undefined,
3083
+ image: prop.Order.alpacaAccount.user.image !== undefined ? prop.Order.alpacaAccount.user.image : undefined,
3084
+ role: prop.Order.alpacaAccount.user.role !== undefined ? prop.Order.alpacaAccount.user.role : undefined,
3085
+ bio: prop.Order.alpacaAccount.user.bio !== undefined ? prop.Order.alpacaAccount.user.bio : undefined,
3086
+ jobTitle: prop.Order.alpacaAccount.user.jobTitle !== undefined ? prop.Order.alpacaAccount.user.jobTitle : undefined,
3087
+ currentAccount: prop.Order.alpacaAccount.user.currentAccount !== undefined ? prop.Order.alpacaAccount.user.currentAccount : undefined,
3088
+ plan: prop.Order.alpacaAccount.user.plan !== undefined ? prop.Order.alpacaAccount.user.plan : undefined,
3089
+ openaiAPIKey: prop.Order.alpacaAccount.user.openaiAPIKey !== undefined ? prop.Order.alpacaAccount.user.openaiAPIKey : undefined,
3090
+ openaiModel: prop.Order.alpacaAccount.user.openaiModel !== undefined ? prop.Order.alpacaAccount.user.openaiModel : undefined,
3091
+ },
3092
+ }
3093
+ } : undefined,
3094
+ trades: prop.Order.alpacaAccount.trades ?
3095
+ Array.isArray(prop.Order.alpacaAccount.trades) && prop.Order.alpacaAccount.trades.length > 0 && prop.Order.alpacaAccount.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3096
+ connect: prop.Order.alpacaAccount.trades.map((item) => ({
3097
+ id: item.id
3098
+ }))
3099
+ }
3100
+ : { connectOrCreate: prop.Order.alpacaAccount.trades.map((item) => ({
3101
+ where: {
3102
+ id: item.id !== undefined ? item.id : undefined,
3103
+ },
3104
+ create: {
3105
+ qty: item.qty !== undefined ? item.qty : undefined,
3106
+ price: item.price !== undefined ? item.price : undefined,
3107
+ total: item.total !== undefined ? item.total : undefined,
3108
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3109
+ signal: item.signal !== undefined ? item.signal : undefined,
3110
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3111
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3112
+ summary: item.summary !== undefined ? item.summary : undefined,
3113
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3114
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3115
+ status: item.status !== undefined ? item.status : undefined,
3116
+ },
3117
+ }))
3118
+ } : undefined,
3119
+ positions: prop.Order.alpacaAccount.positions ?
3120
+ Array.isArray(prop.Order.alpacaAccount.positions) && prop.Order.alpacaAccount.positions.length > 0 && prop.Order.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3121
+ connect: prop.Order.alpacaAccount.positions.map((item) => ({
3122
+ id: item.id
3123
+ }))
3124
+ }
3125
+ : { connectOrCreate: prop.Order.alpacaAccount.positions.map((item) => ({
3126
+ where: {
3127
+ id: item.id !== undefined ? item.id : undefined,
3128
+ },
3129
+ create: {
3130
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3131
+ qty: item.qty !== undefined ? item.qty : undefined,
3132
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3133
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3134
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3135
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3136
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3137
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3138
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3139
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3140
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3141
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3142
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3143
+ },
3144
+ }))
3145
+ } : undefined,
3146
+ alerts: prop.Order.alpacaAccount.alerts ?
3147
+ Array.isArray(prop.Order.alpacaAccount.alerts) && prop.Order.alpacaAccount.alerts.length > 0 && prop.Order.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3148
+ connect: prop.Order.alpacaAccount.alerts.map((item) => ({
3149
+ id: item.id
3150
+ }))
3151
+ }
3152
+ : { connectOrCreate: prop.Order.alpacaAccount.alerts.map((item) => ({
3153
+ where: {
3154
+ id: item.id !== undefined ? item.id : undefined,
3155
+ },
3156
+ create: {
3157
+ message: item.message !== undefined ? item.message : undefined,
3158
+ type: item.type !== undefined ? item.type : undefined,
3159
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
3160
+ },
3161
+ }))
3162
+ } : undefined,
1443
3163
  },
1444
3164
  }
1445
3165
  } : undefined,
@@ -1459,6 +3179,31 @@ export const TakeProfit = {
1459
3179
  note: prop.Order.action.note !== undefined ? prop.Order.action.note : undefined,
1460
3180
  status: prop.Order.action.status !== undefined ? prop.Order.action.status : undefined,
1461
3181
  fee: prop.Order.action.fee !== undefined ? prop.Order.action.fee : undefined,
3182
+ trade: prop.Order.action.trade ?
3183
+ typeof prop.Order.action.trade === 'object' && Object.keys(prop.Order.action.trade).length === 1 && Object.keys(prop.Order.action.trade)[0] === 'id'
3184
+ ? { connect: {
3185
+ id: prop.Order.action.trade.id
3186
+ }
3187
+ }
3188
+ : { connectOrCreate: {
3189
+ where: {
3190
+ id: prop.Order.action.trade.id !== undefined ? prop.Order.action.trade.id : undefined,
3191
+ },
3192
+ create: {
3193
+ qty: prop.Order.action.trade.qty !== undefined ? prop.Order.action.trade.qty : undefined,
3194
+ price: prop.Order.action.trade.price !== undefined ? prop.Order.action.trade.price : undefined,
3195
+ total: prop.Order.action.trade.total !== undefined ? prop.Order.action.trade.total : undefined,
3196
+ optionType: prop.Order.action.trade.optionType !== undefined ? prop.Order.action.trade.optionType : undefined,
3197
+ signal: prop.Order.action.trade.signal !== undefined ? prop.Order.action.trade.signal : undefined,
3198
+ strategy: prop.Order.action.trade.strategy !== undefined ? prop.Order.action.trade.strategy : undefined,
3199
+ analysis: prop.Order.action.trade.analysis !== undefined ? prop.Order.action.trade.analysis : undefined,
3200
+ summary: prop.Order.action.trade.summary !== undefined ? prop.Order.action.trade.summary : undefined,
3201
+ confidence: prop.Order.action.trade.confidence !== undefined ? prop.Order.action.trade.confidence : undefined,
3202
+ timestamp: prop.Order.action.trade.timestamp !== undefined ? prop.Order.action.trade.timestamp : undefined,
3203
+ status: prop.Order.action.trade.status !== undefined ? prop.Order.action.trade.status : undefined,
3204
+ },
3205
+ }
3206
+ } : undefined,
1462
3207
  },
1463
3208
  }
1464
3209
  } : undefined,
@@ -1530,6 +3275,77 @@ export const TakeProfit = {
1530
3275
  exDividendDate: prop.Order.asset.exDividendDate !== undefined ? prop.Order.asset.exDividendDate : undefined,
1531
3276
  askPrice: prop.Order.asset.askPrice !== undefined ? prop.Order.asset.askPrice : undefined,
1532
3277
  bidPrice: prop.Order.asset.bidPrice !== undefined ? prop.Order.asset.bidPrice : undefined,
3278
+ trades: prop.Order.asset.trades ?
3279
+ Array.isArray(prop.Order.asset.trades) && prop.Order.asset.trades.length > 0 && prop.Order.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3280
+ connect: prop.Order.asset.trades.map((item) => ({
3281
+ id: item.id
3282
+ }))
3283
+ }
3284
+ : { connectOrCreate: prop.Order.asset.trades.map((item) => ({
3285
+ where: {
3286
+ id: item.id !== undefined ? item.id : undefined,
3287
+ },
3288
+ create: {
3289
+ qty: item.qty !== undefined ? item.qty : undefined,
3290
+ price: item.price !== undefined ? item.price : undefined,
3291
+ total: item.total !== undefined ? item.total : undefined,
3292
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3293
+ signal: item.signal !== undefined ? item.signal : undefined,
3294
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3295
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3296
+ summary: item.summary !== undefined ? item.summary : undefined,
3297
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3298
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3299
+ status: item.status !== undefined ? item.status : undefined,
3300
+ },
3301
+ }))
3302
+ } : undefined,
3303
+ positions: prop.Order.asset.positions ?
3304
+ Array.isArray(prop.Order.asset.positions) && prop.Order.asset.positions.length > 0 && prop.Order.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3305
+ connect: prop.Order.asset.positions.map((item) => ({
3306
+ id: item.id
3307
+ }))
3308
+ }
3309
+ : { connectOrCreate: prop.Order.asset.positions.map((item) => ({
3310
+ where: {
3311
+ id: item.id !== undefined ? item.id : undefined,
3312
+ },
3313
+ create: {
3314
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3315
+ qty: item.qty !== undefined ? item.qty : undefined,
3316
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3317
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3318
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3319
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3320
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3321
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3322
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3323
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3324
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3325
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3326
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3327
+ },
3328
+ }))
3329
+ } : undefined,
3330
+ newsMentions: prop.Order.asset.newsMentions ?
3331
+ Array.isArray(prop.Order.asset.newsMentions) && prop.Order.asset.newsMentions.length > 0 && prop.Order.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3332
+ connect: prop.Order.asset.newsMentions.map((item) => ({
3333
+ id: item.id
3334
+ }))
3335
+ }
3336
+ : { connectOrCreate: prop.Order.asset.newsMentions.map((item) => ({
3337
+ where: {
3338
+ id: item.id !== undefined ? item.id : undefined,
3339
+ url: item.url !== undefined ? item.url : undefined,
3340
+ },
3341
+ create: {
3342
+ url: item.url !== undefined ? item.url : undefined,
3343
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3344
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3345
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3346
+ },
3347
+ }))
3348
+ } : undefined,
1533
3349
  },
1534
3350
  }
1535
3351
  } : undefined,
@@ -1605,18 +3421,10 @@ export const TakeProfit = {
1605
3421
  }`;
1606
3422
  const variables = {
1607
3423
  where: {
1608
- id: props.id !== undefined ? {
1609
- equals: props.id
1610
- } : undefined,
1611
- orderId: props.orderId !== undefined ? {
1612
- equals: props.orderId
1613
- } : undefined,
1614
- createdAt: props.createdAt !== undefined ? {
1615
- equals: props.createdAt
1616
- } : undefined,
1617
- updatedAt: props.updatedAt !== undefined ? {
1618
- equals: props.updatedAt
1619
- } : undefined,
3424
+ id: props.id !== undefined ? props.id : undefined,
3425
+ orderId: props.orderId !== undefined ? props.orderId : undefined,
3426
+ createdAt: props.createdAt !== undefined ? props.createdAt : undefined,
3427
+ updatedAt: props.updatedAt !== undefined ? props.updatedAt : undefined,
1620
3428
  },
1621
3429
  };
1622
3430
  const filteredVariables = removeUndefinedProps(variables);
@@ -1679,18 +3487,10 @@ export const TakeProfit = {
1679
3487
  }`;
1680
3488
  const variables = {
1681
3489
  where: {
1682
- id: props.id !== undefined ? {
1683
- equals: props.id
1684
- } : undefined,
1685
- createdAt: props.createdAt !== undefined ? {
1686
- equals: props.createdAt
1687
- } : undefined,
1688
- updatedAt: props.updatedAt !== undefined ? {
1689
- equals: props.updatedAt
1690
- } : undefined,
1691
- orderId: props.orderId !== undefined ? {
1692
- equals: props.orderId
1693
- } : undefined,
3490
+ id: props.id !== undefined ? props.id : undefined,
3491
+ createdAt: props.createdAt !== undefined ? props.createdAt : undefined,
3492
+ updatedAt: props.updatedAt !== undefined ? props.updatedAt : undefined,
3493
+ orderId: props.orderId !== undefined ? props.orderId : undefined,
1694
3494
  },
1695
3495
  };
1696
3496
  const filteredVariables = removeUndefinedProps(variables);