adaptic-backend 1.0.151 → 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 (65) hide show
  1. package/Account.cjs +1029 -0
  2. package/Action.cjs +3460 -0
  3. package/Alert.cjs +3800 -0
  4. package/AlpacaAccount.cjs +2888 -0
  5. package/Asset.cjs +3659 -0
  6. package/Authenticator.cjs +1029 -0
  7. package/Customer.cjs +1029 -0
  8. package/NewsArticle.cjs +892 -0
  9. package/NewsArticleAssetSentiment.cjs +1243 -0
  10. package/Order.cjs +4500 -0
  11. package/Position.cjs +4288 -0
  12. package/Session.cjs +1029 -0
  13. package/StopLoss.cjs +1832 -0
  14. package/TakeProfit.cjs +1832 -0
  15. package/Trade.cjs +5276 -0
  16. package/User.cjs +3103 -0
  17. package/package.json +1 -1
  18. package/server/Account.d.ts.map +1 -1
  19. package/server/Account.js.map +1 -1
  20. package/server/Account.mjs +1029 -0
  21. package/server/Action.d.ts.map +1 -1
  22. package/server/Action.js.map +1 -1
  23. package/server/Action.mjs +3460 -0
  24. package/server/Alert.d.ts.map +1 -1
  25. package/server/Alert.js.map +1 -1
  26. package/server/Alert.mjs +3800 -0
  27. package/server/AlpacaAccount.d.ts.map +1 -1
  28. package/server/AlpacaAccount.js.map +1 -1
  29. package/server/AlpacaAccount.mjs +2888 -0
  30. package/server/Asset.d.ts.map +1 -1
  31. package/server/Asset.js.map +1 -1
  32. package/server/Asset.mjs +3659 -0
  33. package/server/Authenticator.d.ts.map +1 -1
  34. package/server/Authenticator.js.map +1 -1
  35. package/server/Authenticator.mjs +1029 -0
  36. package/server/Customer.d.ts.map +1 -1
  37. package/server/Customer.js.map +1 -1
  38. package/server/Customer.mjs +1029 -0
  39. package/server/NewsArticle.d.ts.map +1 -1
  40. package/server/NewsArticle.js.map +1 -1
  41. package/server/NewsArticle.mjs +892 -0
  42. package/server/NewsArticleAssetSentiment.d.ts.map +1 -1
  43. package/server/NewsArticleAssetSentiment.js.map +1 -1
  44. package/server/NewsArticleAssetSentiment.mjs +1243 -0
  45. package/server/Order.d.ts.map +1 -1
  46. package/server/Order.js.map +1 -1
  47. package/server/Order.mjs +4500 -0
  48. package/server/Position.d.ts.map +1 -1
  49. package/server/Position.js.map +1 -1
  50. package/server/Position.mjs +4288 -0
  51. package/server/Session.d.ts.map +1 -1
  52. package/server/Session.js.map +1 -1
  53. package/server/Session.mjs +1029 -0
  54. package/server/StopLoss.d.ts.map +1 -1
  55. package/server/StopLoss.js.map +1 -1
  56. package/server/StopLoss.mjs +1832 -0
  57. package/server/TakeProfit.d.ts.map +1 -1
  58. package/server/TakeProfit.js.map +1 -1
  59. package/server/TakeProfit.mjs +1832 -0
  60. package/server/Trade.d.ts.map +1 -1
  61. package/server/Trade.js.map +1 -1
  62. package/server/Trade.mjs +5276 -0
  63. package/server/User.d.ts.map +1 -1
  64. package/server/User.js.map +1 -1
  65. package/server/User.mjs +3103 -0
package/server/Action.mjs CHANGED
@@ -228,6 +228,115 @@ export const Action = {
228
228
  maxOrderSize: props.trade.alpacaAccount.maxOrderSize !== undefined ? props.trade.alpacaAccount.maxOrderSize : undefined,
229
229
  minPercentageChange: props.trade.alpacaAccount.minPercentageChange !== undefined ? props.trade.alpacaAccount.minPercentageChange : undefined,
230
230
  volumeThreshold: props.trade.alpacaAccount.volumeThreshold !== undefined ? props.trade.alpacaAccount.volumeThreshold : undefined,
231
+ user: props.trade.alpacaAccount.user ?
232
+ typeof props.trade.alpacaAccount.user === 'object' && Object.keys(props.trade.alpacaAccount.user).length === 1 && Object.keys(props.trade.alpacaAccount.user)[0] === 'id'
233
+ ? { connect: {
234
+ id: props.trade.alpacaAccount.user.id
235
+ }
236
+ }
237
+ : { connectOrCreate: {
238
+ where: {
239
+ id: props.trade.alpacaAccount.user.id !== undefined ? props.trade.alpacaAccount.user.id : undefined,
240
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
241
+ name: props.trade.alpacaAccount.user.name !== undefined ? {
242
+ equals: props.trade.alpacaAccount.user.name
243
+ } : undefined,
244
+ },
245
+ create: {
246
+ name: props.trade.alpacaAccount.user.name !== undefined ? props.trade.alpacaAccount.user.name : undefined,
247
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
248
+ emailVerified: props.trade.alpacaAccount.user.emailVerified !== undefined ? props.trade.alpacaAccount.user.emailVerified : undefined,
249
+ image: props.trade.alpacaAccount.user.image !== undefined ? props.trade.alpacaAccount.user.image : undefined,
250
+ role: props.trade.alpacaAccount.user.role !== undefined ? props.trade.alpacaAccount.user.role : undefined,
251
+ bio: props.trade.alpacaAccount.user.bio !== undefined ? props.trade.alpacaAccount.user.bio : undefined,
252
+ jobTitle: props.trade.alpacaAccount.user.jobTitle !== undefined ? props.trade.alpacaAccount.user.jobTitle : undefined,
253
+ currentAccount: props.trade.alpacaAccount.user.currentAccount !== undefined ? props.trade.alpacaAccount.user.currentAccount : undefined,
254
+ plan: props.trade.alpacaAccount.user.plan !== undefined ? props.trade.alpacaAccount.user.plan : undefined,
255
+ openaiAPIKey: props.trade.alpacaAccount.user.openaiAPIKey !== undefined ? props.trade.alpacaAccount.user.openaiAPIKey : undefined,
256
+ openaiModel: props.trade.alpacaAccount.user.openaiModel !== undefined ? props.trade.alpacaAccount.user.openaiModel : undefined,
257
+ },
258
+ }
259
+ } : undefined,
260
+ orders: props.trade.alpacaAccount.orders ?
261
+ Array.isArray(props.trade.alpacaAccount.orders) && props.trade.alpacaAccount.orders.length > 0 && props.trade.alpacaAccount.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
262
+ connect: props.trade.alpacaAccount.orders.map((item) => ({
263
+ id: item.id
264
+ }))
265
+ }
266
+ : { connectOrCreate: props.trade.alpacaAccount.orders.map((item) => ({
267
+ where: {
268
+ id: item.id !== undefined ? item.id : undefined,
269
+ },
270
+ create: {
271
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
272
+ qty: item.qty !== undefined ? item.qty : undefined,
273
+ notional: item.notional !== undefined ? item.notional : undefined,
274
+ side: item.side !== undefined ? item.side : undefined,
275
+ type: item.type !== undefined ? item.type : undefined,
276
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
277
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
278
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
279
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
280
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
281
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
282
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
283
+ status: item.status !== undefined ? item.status : undefined,
284
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
285
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
286
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
287
+ fee: item.fee !== undefined ? item.fee : undefined,
288
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
289
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
290
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
291
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
292
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
293
+ },
294
+ }))
295
+ } : undefined,
296
+ positions: props.trade.alpacaAccount.positions ?
297
+ Array.isArray(props.trade.alpacaAccount.positions) && props.trade.alpacaAccount.positions.length > 0 && props.trade.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
298
+ connect: props.trade.alpacaAccount.positions.map((item) => ({
299
+ id: item.id
300
+ }))
301
+ }
302
+ : { connectOrCreate: props.trade.alpacaAccount.positions.map((item) => ({
303
+ where: {
304
+ id: item.id !== undefined ? item.id : undefined,
305
+ },
306
+ create: {
307
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
308
+ qty: item.qty !== undefined ? item.qty : undefined,
309
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
310
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
311
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
312
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
313
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
314
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
315
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
316
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
317
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
318
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
319
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
320
+ },
321
+ }))
322
+ } : undefined,
323
+ alerts: props.trade.alpacaAccount.alerts ?
324
+ Array.isArray(props.trade.alpacaAccount.alerts) && props.trade.alpacaAccount.alerts.length > 0 && props.trade.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
325
+ connect: props.trade.alpacaAccount.alerts.map((item) => ({
326
+ id: item.id
327
+ }))
328
+ }
329
+ : { connectOrCreate: props.trade.alpacaAccount.alerts.map((item) => ({
330
+ where: {
331
+ id: item.id !== undefined ? item.id : undefined,
332
+ },
333
+ create: {
334
+ message: item.message !== undefined ? item.message : undefined,
335
+ type: item.type !== undefined ? item.type : undefined,
336
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
337
+ },
338
+ }))
339
+ } : undefined,
231
340
  },
232
341
  }
233
342
  } : undefined,
@@ -299,6 +408,88 @@ export const Action = {
299
408
  exDividendDate: props.trade.asset.exDividendDate !== undefined ? props.trade.asset.exDividendDate : undefined,
300
409
  askPrice: props.trade.asset.askPrice !== undefined ? props.trade.asset.askPrice : undefined,
301
410
  bidPrice: props.trade.asset.bidPrice !== undefined ? props.trade.asset.bidPrice : undefined,
411
+ orders: props.trade.asset.orders ?
412
+ Array.isArray(props.trade.asset.orders) && props.trade.asset.orders.length > 0 && props.trade.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
413
+ connect: props.trade.asset.orders.map((item) => ({
414
+ id: item.id
415
+ }))
416
+ }
417
+ : { connectOrCreate: props.trade.asset.orders.map((item) => ({
418
+ where: {
419
+ id: item.id !== undefined ? item.id : undefined,
420
+ },
421
+ create: {
422
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
423
+ qty: item.qty !== undefined ? item.qty : undefined,
424
+ notional: item.notional !== undefined ? item.notional : undefined,
425
+ side: item.side !== undefined ? item.side : undefined,
426
+ type: item.type !== undefined ? item.type : undefined,
427
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
428
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
429
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
430
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
431
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
432
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
433
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
434
+ status: item.status !== undefined ? item.status : undefined,
435
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
436
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
437
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
438
+ fee: item.fee !== undefined ? item.fee : undefined,
439
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
440
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
441
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
442
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
443
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
444
+ },
445
+ }))
446
+ } : undefined,
447
+ positions: props.trade.asset.positions ?
448
+ Array.isArray(props.trade.asset.positions) && props.trade.asset.positions.length > 0 && props.trade.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
449
+ connect: props.trade.asset.positions.map((item) => ({
450
+ id: item.id
451
+ }))
452
+ }
453
+ : { connectOrCreate: props.trade.asset.positions.map((item) => ({
454
+ where: {
455
+ id: item.id !== undefined ? item.id : undefined,
456
+ },
457
+ create: {
458
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
459
+ qty: item.qty !== undefined ? item.qty : undefined,
460
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
461
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
462
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
463
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
464
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
465
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
466
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
467
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
468
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
469
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
470
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
471
+ },
472
+ }))
473
+ } : undefined,
474
+ newsMentions: props.trade.asset.newsMentions ?
475
+ Array.isArray(props.trade.asset.newsMentions) && props.trade.asset.newsMentions.length > 0 && props.trade.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
476
+ connect: props.trade.asset.newsMentions.map((item) => ({
477
+ id: item.id
478
+ }))
479
+ }
480
+ : { connectOrCreate: props.trade.asset.newsMentions.map((item) => ({
481
+ where: {
482
+ id: item.id !== undefined ? item.id : undefined,
483
+ url: item.url !== undefined ? item.url : undefined,
484
+ },
485
+ create: {
486
+ url: item.url !== undefined ? item.url : undefined,
487
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
488
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
489
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
490
+ },
491
+ }))
492
+ } : undefined,
302
493
  },
303
494
  }
304
495
  } : undefined,
@@ -390,6 +581,104 @@ export const Action = {
390
581
  maxOrderSize: props.order.alpacaAccount.maxOrderSize !== undefined ? props.order.alpacaAccount.maxOrderSize : undefined,
391
582
  minPercentageChange: props.order.alpacaAccount.minPercentageChange !== undefined ? props.order.alpacaAccount.minPercentageChange : undefined,
392
583
  volumeThreshold: props.order.alpacaAccount.volumeThreshold !== undefined ? props.order.alpacaAccount.volumeThreshold : undefined,
584
+ user: props.order.alpacaAccount.user ?
585
+ typeof props.order.alpacaAccount.user === 'object' && Object.keys(props.order.alpacaAccount.user).length === 1 && Object.keys(props.order.alpacaAccount.user)[0] === 'id'
586
+ ? { connect: {
587
+ id: props.order.alpacaAccount.user.id
588
+ }
589
+ }
590
+ : { connectOrCreate: {
591
+ where: {
592
+ id: props.order.alpacaAccount.user.id !== undefined ? props.order.alpacaAccount.user.id : undefined,
593
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
594
+ name: props.order.alpacaAccount.user.name !== undefined ? {
595
+ equals: props.order.alpacaAccount.user.name
596
+ } : undefined,
597
+ },
598
+ create: {
599
+ name: props.order.alpacaAccount.user.name !== undefined ? props.order.alpacaAccount.user.name : undefined,
600
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
601
+ emailVerified: props.order.alpacaAccount.user.emailVerified !== undefined ? props.order.alpacaAccount.user.emailVerified : undefined,
602
+ image: props.order.alpacaAccount.user.image !== undefined ? props.order.alpacaAccount.user.image : undefined,
603
+ role: props.order.alpacaAccount.user.role !== undefined ? props.order.alpacaAccount.user.role : undefined,
604
+ bio: props.order.alpacaAccount.user.bio !== undefined ? props.order.alpacaAccount.user.bio : undefined,
605
+ jobTitle: props.order.alpacaAccount.user.jobTitle !== undefined ? props.order.alpacaAccount.user.jobTitle : undefined,
606
+ currentAccount: props.order.alpacaAccount.user.currentAccount !== undefined ? props.order.alpacaAccount.user.currentAccount : undefined,
607
+ plan: props.order.alpacaAccount.user.plan !== undefined ? props.order.alpacaAccount.user.plan : undefined,
608
+ openaiAPIKey: props.order.alpacaAccount.user.openaiAPIKey !== undefined ? props.order.alpacaAccount.user.openaiAPIKey : undefined,
609
+ openaiModel: props.order.alpacaAccount.user.openaiModel !== undefined ? props.order.alpacaAccount.user.openaiModel : undefined,
610
+ },
611
+ }
612
+ } : undefined,
613
+ trades: props.order.alpacaAccount.trades ?
614
+ 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) ? {
615
+ connect: props.order.alpacaAccount.trades.map((item) => ({
616
+ id: item.id
617
+ }))
618
+ }
619
+ : { connectOrCreate: props.order.alpacaAccount.trades.map((item) => ({
620
+ where: {
621
+ id: item.id !== undefined ? item.id : undefined,
622
+ },
623
+ create: {
624
+ qty: item.qty !== undefined ? item.qty : undefined,
625
+ price: item.price !== undefined ? item.price : undefined,
626
+ total: item.total !== undefined ? item.total : undefined,
627
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
628
+ signal: item.signal !== undefined ? item.signal : undefined,
629
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
630
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
631
+ summary: item.summary !== undefined ? item.summary : undefined,
632
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
633
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
634
+ status: item.status !== undefined ? item.status : undefined,
635
+ },
636
+ }))
637
+ } : undefined,
638
+ positions: props.order.alpacaAccount.positions ?
639
+ 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) ? {
640
+ connect: props.order.alpacaAccount.positions.map((item) => ({
641
+ id: item.id
642
+ }))
643
+ }
644
+ : { connectOrCreate: props.order.alpacaAccount.positions.map((item) => ({
645
+ where: {
646
+ id: item.id !== undefined ? item.id : undefined,
647
+ },
648
+ create: {
649
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
650
+ qty: item.qty !== undefined ? item.qty : undefined,
651
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
652
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
653
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
654
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
655
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
656
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
657
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
658
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
659
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
660
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
661
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
662
+ },
663
+ }))
664
+ } : undefined,
665
+ alerts: props.order.alpacaAccount.alerts ?
666
+ 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) ? {
667
+ connect: props.order.alpacaAccount.alerts.map((item) => ({
668
+ id: item.id
669
+ }))
670
+ }
671
+ : { connectOrCreate: props.order.alpacaAccount.alerts.map((item) => ({
672
+ where: {
673
+ id: item.id !== undefined ? item.id : undefined,
674
+ },
675
+ create: {
676
+ message: item.message !== undefined ? item.message : undefined,
677
+ type: item.type !== undefined ? item.type : undefined,
678
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
679
+ },
680
+ }))
681
+ } : undefined,
393
682
  },
394
683
  }
395
684
  } : undefined,
@@ -461,6 +750,77 @@ export const Action = {
461
750
  exDividendDate: props.order.asset.exDividendDate !== undefined ? props.order.asset.exDividendDate : undefined,
462
751
  askPrice: props.order.asset.askPrice !== undefined ? props.order.asset.askPrice : undefined,
463
752
  bidPrice: props.order.asset.bidPrice !== undefined ? props.order.asset.bidPrice : undefined,
753
+ trades: props.order.asset.trades ?
754
+ 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) ? {
755
+ connect: props.order.asset.trades.map((item) => ({
756
+ id: item.id
757
+ }))
758
+ }
759
+ : { connectOrCreate: props.order.asset.trades.map((item) => ({
760
+ where: {
761
+ id: item.id !== undefined ? item.id : undefined,
762
+ },
763
+ create: {
764
+ qty: item.qty !== undefined ? item.qty : undefined,
765
+ price: item.price !== undefined ? item.price : undefined,
766
+ total: item.total !== undefined ? item.total : undefined,
767
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
768
+ signal: item.signal !== undefined ? item.signal : undefined,
769
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
770
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
771
+ summary: item.summary !== undefined ? item.summary : undefined,
772
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
773
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
774
+ status: item.status !== undefined ? item.status : undefined,
775
+ },
776
+ }))
777
+ } : undefined,
778
+ positions: props.order.asset.positions ?
779
+ 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) ? {
780
+ connect: props.order.asset.positions.map((item) => ({
781
+ id: item.id
782
+ }))
783
+ }
784
+ : { connectOrCreate: props.order.asset.positions.map((item) => ({
785
+ where: {
786
+ id: item.id !== undefined ? item.id : undefined,
787
+ },
788
+ create: {
789
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
790
+ qty: item.qty !== undefined ? item.qty : undefined,
791
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
792
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
793
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
794
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
795
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
796
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
797
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
798
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
799
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
800
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
801
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
802
+ },
803
+ }))
804
+ } : undefined,
805
+ newsMentions: props.order.asset.newsMentions ?
806
+ 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) ? {
807
+ connect: props.order.asset.newsMentions.map((item) => ({
808
+ id: item.id
809
+ }))
810
+ }
811
+ : { connectOrCreate: props.order.asset.newsMentions.map((item) => ({
812
+ where: {
813
+ id: item.id !== undefined ? item.id : undefined,
814
+ url: item.url !== undefined ? item.url : undefined,
815
+ },
816
+ create: {
817
+ url: item.url !== undefined ? item.url : undefined,
818
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
819
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
820
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
821
+ },
822
+ }))
823
+ } : undefined,
464
824
  },
465
825
  }
466
826
  } : undefined,
@@ -649,6 +1009,266 @@ export const Action = {
649
1009
  volumeThreshold: props.trade.alpacaAccount.volumeThreshold !== undefined ? {
650
1010
  set: props.trade.alpacaAccount.volumeThreshold
651
1011
  } : undefined,
1012
+ user: props.trade.alpacaAccount.user ? {
1013
+ upsert: {
1014
+ where: {
1015
+ id: props.trade.alpacaAccount.user.id !== undefined ? {
1016
+ equals: props.trade.alpacaAccount.user.id
1017
+ } : undefined,
1018
+ name: props.trade.alpacaAccount.user.name !== undefined ? {
1019
+ equals: props.trade.alpacaAccount.user.name
1020
+ } : undefined,
1021
+ email: props.trade.alpacaAccount.user.email !== undefined ? {
1022
+ equals: props.trade.alpacaAccount.user.email
1023
+ } : undefined,
1024
+ },
1025
+ update: {
1026
+ id: props.trade.alpacaAccount.user.id !== undefined ? {
1027
+ set: props.trade.alpacaAccount.user.id
1028
+ } : undefined,
1029
+ name: props.trade.alpacaAccount.user.name !== undefined ? {
1030
+ set: props.trade.alpacaAccount.user.name
1031
+ } : undefined,
1032
+ email: props.trade.alpacaAccount.user.email !== undefined ? {
1033
+ set: props.trade.alpacaAccount.user.email
1034
+ } : undefined,
1035
+ emailVerified: props.trade.alpacaAccount.user.emailVerified !== undefined ? {
1036
+ set: props.trade.alpacaAccount.user.emailVerified
1037
+ } : undefined,
1038
+ image: props.trade.alpacaAccount.user.image !== undefined ? {
1039
+ set: props.trade.alpacaAccount.user.image
1040
+ } : undefined,
1041
+ role: props.trade.alpacaAccount.user.role !== undefined ? {
1042
+ set: props.trade.alpacaAccount.user.role
1043
+ } : undefined,
1044
+ bio: props.trade.alpacaAccount.user.bio !== undefined ? {
1045
+ set: props.trade.alpacaAccount.user.bio
1046
+ } : undefined,
1047
+ jobTitle: props.trade.alpacaAccount.user.jobTitle !== undefined ? {
1048
+ set: props.trade.alpacaAccount.user.jobTitle
1049
+ } : undefined,
1050
+ currentAccount: props.trade.alpacaAccount.user.currentAccount !== undefined ? {
1051
+ set: props.trade.alpacaAccount.user.currentAccount
1052
+ } : undefined,
1053
+ plan: props.trade.alpacaAccount.user.plan !== undefined ? {
1054
+ set: props.trade.alpacaAccount.user.plan
1055
+ } : undefined,
1056
+ openaiAPIKey: props.trade.alpacaAccount.user.openaiAPIKey !== undefined ? {
1057
+ set: props.trade.alpacaAccount.user.openaiAPIKey
1058
+ } : undefined,
1059
+ openaiModel: props.trade.alpacaAccount.user.openaiModel !== undefined ? {
1060
+ set: props.trade.alpacaAccount.user.openaiModel
1061
+ } : undefined,
1062
+ },
1063
+ create: {
1064
+ name: props.trade.alpacaAccount.user.name !== undefined ? props.trade.alpacaAccount.user.name : undefined,
1065
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
1066
+ emailVerified: props.trade.alpacaAccount.user.emailVerified !== undefined ? props.trade.alpacaAccount.user.emailVerified : undefined,
1067
+ image: props.trade.alpacaAccount.user.image !== undefined ? props.trade.alpacaAccount.user.image : undefined,
1068
+ role: props.trade.alpacaAccount.user.role !== undefined ? props.trade.alpacaAccount.user.role : undefined,
1069
+ bio: props.trade.alpacaAccount.user.bio !== undefined ? props.trade.alpacaAccount.user.bio : undefined,
1070
+ jobTitle: props.trade.alpacaAccount.user.jobTitle !== undefined ? props.trade.alpacaAccount.user.jobTitle : undefined,
1071
+ currentAccount: props.trade.alpacaAccount.user.currentAccount !== undefined ? props.trade.alpacaAccount.user.currentAccount : undefined,
1072
+ plan: props.trade.alpacaAccount.user.plan !== undefined ? props.trade.alpacaAccount.user.plan : undefined,
1073
+ openaiAPIKey: props.trade.alpacaAccount.user.openaiAPIKey !== undefined ? props.trade.alpacaAccount.user.openaiAPIKey : undefined,
1074
+ openaiModel: props.trade.alpacaAccount.user.openaiModel !== undefined ? props.trade.alpacaAccount.user.openaiModel : undefined,
1075
+ },
1076
+ }
1077
+ } : undefined,
1078
+ orders: props.trade.alpacaAccount.orders ? {
1079
+ upsert: props.trade.alpacaAccount.orders.map((item) => ({
1080
+ where: {
1081
+ id: item.id !== undefined ? item.id : undefined,
1082
+ },
1083
+ update: {
1084
+ id: item.id !== undefined ? {
1085
+ set: item.id
1086
+ } : undefined,
1087
+ clientOrderId: item.clientOrderId !== undefined ? {
1088
+ set: item.clientOrderId
1089
+ } : undefined,
1090
+ qty: item.qty !== undefined ? {
1091
+ set: item.qty
1092
+ } : undefined,
1093
+ notional: item.notional !== undefined ? {
1094
+ set: item.notional
1095
+ } : undefined,
1096
+ side: item.side !== undefined ? {
1097
+ set: item.side
1098
+ } : undefined,
1099
+ type: item.type !== undefined ? {
1100
+ set: item.type
1101
+ } : undefined,
1102
+ orderClass: item.orderClass !== undefined ? {
1103
+ set: item.orderClass
1104
+ } : undefined,
1105
+ timeInForce: item.timeInForce !== undefined ? {
1106
+ set: item.timeInForce
1107
+ } : undefined,
1108
+ limitPrice: item.limitPrice !== undefined ? {
1109
+ set: item.limitPrice
1110
+ } : undefined,
1111
+ stopPrice: item.stopPrice !== undefined ? {
1112
+ set: item.stopPrice
1113
+ } : undefined,
1114
+ trailPrice: item.trailPrice !== undefined ? {
1115
+ set: item.trailPrice
1116
+ } : undefined,
1117
+ trailPercent: item.trailPercent !== undefined ? {
1118
+ set: item.trailPercent
1119
+ } : undefined,
1120
+ extendedHours: item.extendedHours !== undefined ? {
1121
+ set: item.extendedHours
1122
+ } : undefined,
1123
+ status: item.status !== undefined ? {
1124
+ set: item.status
1125
+ } : undefined,
1126
+ submittedAt: item.submittedAt !== undefined ? {
1127
+ set: item.submittedAt
1128
+ } : undefined,
1129
+ filledAt: item.filledAt !== undefined ? {
1130
+ set: item.filledAt
1131
+ } : undefined,
1132
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
1133
+ set: item.filledAvgPrice
1134
+ } : undefined,
1135
+ fee: item.fee !== undefined ? {
1136
+ set: item.fee
1137
+ } : undefined,
1138
+ strikePrice: item.strikePrice !== undefined ? {
1139
+ set: item.strikePrice
1140
+ } : undefined,
1141
+ expirationDate: item.expirationDate !== undefined ? {
1142
+ set: item.expirationDate
1143
+ } : undefined,
1144
+ optionType: item.optionType !== undefined ? {
1145
+ set: item.optionType
1146
+ } : undefined,
1147
+ stopLossId: item.stopLossId !== undefined ? {
1148
+ set: item.stopLossId
1149
+ } : undefined,
1150
+ takeProfitId: item.takeProfitId !== undefined ? {
1151
+ set: item.takeProfitId
1152
+ } : undefined,
1153
+ },
1154
+ create: {
1155
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1156
+ qty: item.qty !== undefined ? item.qty : undefined,
1157
+ notional: item.notional !== undefined ? item.notional : undefined,
1158
+ side: item.side !== undefined ? item.side : undefined,
1159
+ type: item.type !== undefined ? item.type : undefined,
1160
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1161
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1162
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1163
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
1164
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
1165
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
1166
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
1167
+ status: item.status !== undefined ? item.status : undefined,
1168
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
1169
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
1170
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
1171
+ fee: item.fee !== undefined ? item.fee : undefined,
1172
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
1173
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
1174
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1175
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
1176
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
1177
+ },
1178
+ }))
1179
+ } : undefined,
1180
+ positions: props.trade.alpacaAccount.positions ? {
1181
+ upsert: props.trade.alpacaAccount.positions.map((item) => ({
1182
+ where: {
1183
+ id: item.id !== undefined ? item.id : undefined,
1184
+ },
1185
+ update: {
1186
+ id: item.id !== undefined ? {
1187
+ set: item.id
1188
+ } : undefined,
1189
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
1190
+ set: item.averageEntryPrice
1191
+ } : undefined,
1192
+ qty: item.qty !== undefined ? {
1193
+ set: item.qty
1194
+ } : undefined,
1195
+ qtyAvailable: item.qtyAvailable !== undefined ? {
1196
+ set: item.qtyAvailable
1197
+ } : undefined,
1198
+ marketValue: item.marketValue !== undefined ? {
1199
+ set: item.marketValue
1200
+ } : undefined,
1201
+ costBasis: item.costBasis !== undefined ? {
1202
+ set: item.costBasis
1203
+ } : undefined,
1204
+ unrealizedPL: item.unrealizedPL !== undefined ? {
1205
+ set: item.unrealizedPL
1206
+ } : undefined,
1207
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
1208
+ set: item.unrealizedPLPC
1209
+ } : undefined,
1210
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
1211
+ set: item.unrealisedIntradayPL
1212
+ } : undefined,
1213
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
1214
+ set: item.unrealisedIntradayPLPC
1215
+ } : undefined,
1216
+ currentPrice: item.currentPrice !== undefined ? {
1217
+ set: item.currentPrice
1218
+ } : undefined,
1219
+ lastTradePrice: item.lastTradePrice !== undefined ? {
1220
+ set: item.lastTradePrice
1221
+ } : undefined,
1222
+ changeToday: item.changeToday !== undefined ? {
1223
+ set: item.changeToday
1224
+ } : undefined,
1225
+ assetMarginable: item.assetMarginable !== undefined ? {
1226
+ set: item.assetMarginable
1227
+ } : undefined,
1228
+ },
1229
+ create: {
1230
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1231
+ qty: item.qty !== undefined ? item.qty : undefined,
1232
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1233
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1234
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1235
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1236
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1237
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1238
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1239
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1240
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1241
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1242
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1243
+ },
1244
+ }))
1245
+ } : undefined,
1246
+ alerts: props.trade.alpacaAccount.alerts ? {
1247
+ upsert: props.trade.alpacaAccount.alerts.map((item) => ({
1248
+ where: {
1249
+ id: item.id !== undefined ? item.id : undefined,
1250
+ },
1251
+ update: {
1252
+ id: item.id !== undefined ? {
1253
+ set: item.id
1254
+ } : undefined,
1255
+ message: item.message !== undefined ? {
1256
+ set: item.message
1257
+ } : undefined,
1258
+ type: item.type !== undefined ? {
1259
+ set: item.type
1260
+ } : undefined,
1261
+ isRead: item.isRead !== undefined ? {
1262
+ set: item.isRead
1263
+ } : undefined,
1264
+ },
1265
+ create: {
1266
+ message: item.message !== undefined ? item.message : undefined,
1267
+ type: item.type !== undefined ? item.type : undefined,
1268
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
1269
+ },
1270
+ }))
1271
+ } : undefined,
652
1272
  },
653
1273
  create: {
654
1274
  type: props.trade.alpacaAccount.type !== undefined ? props.trade.alpacaAccount.type : undefined,
@@ -660,6 +1280,115 @@ export const Action = {
660
1280
  maxOrderSize: props.trade.alpacaAccount.maxOrderSize !== undefined ? props.trade.alpacaAccount.maxOrderSize : undefined,
661
1281
  minPercentageChange: props.trade.alpacaAccount.minPercentageChange !== undefined ? props.trade.alpacaAccount.minPercentageChange : undefined,
662
1282
  volumeThreshold: props.trade.alpacaAccount.volumeThreshold !== undefined ? props.trade.alpacaAccount.volumeThreshold : undefined,
1283
+ user: props.trade.alpacaAccount.user ?
1284
+ typeof props.trade.alpacaAccount.user === 'object' && Object.keys(props.trade.alpacaAccount.user).length === 1 && Object.keys(props.trade.alpacaAccount.user)[0] === 'id'
1285
+ ? { connect: {
1286
+ id: props.trade.alpacaAccount.user.id
1287
+ }
1288
+ }
1289
+ : { connectOrCreate: {
1290
+ where: {
1291
+ id: props.trade.alpacaAccount.user.id !== undefined ? props.trade.alpacaAccount.user.id : undefined,
1292
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
1293
+ name: props.trade.alpacaAccount.user.name !== undefined ? {
1294
+ equals: props.trade.alpacaAccount.user.name
1295
+ } : undefined,
1296
+ },
1297
+ create: {
1298
+ name: props.trade.alpacaAccount.user.name !== undefined ? props.trade.alpacaAccount.user.name : undefined,
1299
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
1300
+ emailVerified: props.trade.alpacaAccount.user.emailVerified !== undefined ? props.trade.alpacaAccount.user.emailVerified : undefined,
1301
+ image: props.trade.alpacaAccount.user.image !== undefined ? props.trade.alpacaAccount.user.image : undefined,
1302
+ role: props.trade.alpacaAccount.user.role !== undefined ? props.trade.alpacaAccount.user.role : undefined,
1303
+ bio: props.trade.alpacaAccount.user.bio !== undefined ? props.trade.alpacaAccount.user.bio : undefined,
1304
+ jobTitle: props.trade.alpacaAccount.user.jobTitle !== undefined ? props.trade.alpacaAccount.user.jobTitle : undefined,
1305
+ currentAccount: props.trade.alpacaAccount.user.currentAccount !== undefined ? props.trade.alpacaAccount.user.currentAccount : undefined,
1306
+ plan: props.trade.alpacaAccount.user.plan !== undefined ? props.trade.alpacaAccount.user.plan : undefined,
1307
+ openaiAPIKey: props.trade.alpacaAccount.user.openaiAPIKey !== undefined ? props.trade.alpacaAccount.user.openaiAPIKey : undefined,
1308
+ openaiModel: props.trade.alpacaAccount.user.openaiModel !== undefined ? props.trade.alpacaAccount.user.openaiModel : undefined,
1309
+ },
1310
+ }
1311
+ } : undefined,
1312
+ orders: props.trade.alpacaAccount.orders ?
1313
+ Array.isArray(props.trade.alpacaAccount.orders) && props.trade.alpacaAccount.orders.length > 0 && props.trade.alpacaAccount.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1314
+ connect: props.trade.alpacaAccount.orders.map((item) => ({
1315
+ id: item.id
1316
+ }))
1317
+ }
1318
+ : { connectOrCreate: props.trade.alpacaAccount.orders.map((item) => ({
1319
+ where: {
1320
+ id: item.id !== undefined ? item.id : undefined,
1321
+ },
1322
+ create: {
1323
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1324
+ qty: item.qty !== undefined ? item.qty : undefined,
1325
+ notional: item.notional !== undefined ? item.notional : undefined,
1326
+ side: item.side !== undefined ? item.side : undefined,
1327
+ type: item.type !== undefined ? item.type : undefined,
1328
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1329
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1330
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1331
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
1332
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
1333
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
1334
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
1335
+ status: item.status !== undefined ? item.status : undefined,
1336
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
1337
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
1338
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
1339
+ fee: item.fee !== undefined ? item.fee : undefined,
1340
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
1341
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
1342
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1343
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
1344
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
1345
+ },
1346
+ }))
1347
+ } : undefined,
1348
+ positions: props.trade.alpacaAccount.positions ?
1349
+ Array.isArray(props.trade.alpacaAccount.positions) && props.trade.alpacaAccount.positions.length > 0 && props.trade.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1350
+ connect: props.trade.alpacaAccount.positions.map((item) => ({
1351
+ id: item.id
1352
+ }))
1353
+ }
1354
+ : { connectOrCreate: props.trade.alpacaAccount.positions.map((item) => ({
1355
+ where: {
1356
+ id: item.id !== undefined ? item.id : undefined,
1357
+ },
1358
+ create: {
1359
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1360
+ qty: item.qty !== undefined ? item.qty : undefined,
1361
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1362
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1363
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1364
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1365
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1366
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1367
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1368
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1369
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1370
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1371
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1372
+ },
1373
+ }))
1374
+ } : undefined,
1375
+ alerts: props.trade.alpacaAccount.alerts ?
1376
+ Array.isArray(props.trade.alpacaAccount.alerts) && props.trade.alpacaAccount.alerts.length > 0 && props.trade.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1377
+ connect: props.trade.alpacaAccount.alerts.map((item) => ({
1378
+ id: item.id
1379
+ }))
1380
+ }
1381
+ : { connectOrCreate: props.trade.alpacaAccount.alerts.map((item) => ({
1382
+ where: {
1383
+ id: item.id !== undefined ? item.id : undefined,
1384
+ },
1385
+ create: {
1386
+ message: item.message !== undefined ? item.message : undefined,
1387
+ type: item.type !== undefined ? item.type : undefined,
1388
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
1389
+ },
1390
+ }))
1391
+ } : undefined,
663
1392
  },
664
1393
  }
665
1394
  } : undefined,
@@ -845,6 +1574,205 @@ export const Action = {
845
1574
  bidPrice: props.trade.asset.bidPrice !== undefined ? {
846
1575
  set: props.trade.asset.bidPrice
847
1576
  } : undefined,
1577
+ orders: props.trade.asset.orders ? {
1578
+ upsert: props.trade.asset.orders.map((item) => ({
1579
+ where: {
1580
+ id: item.id !== undefined ? item.id : undefined,
1581
+ },
1582
+ update: {
1583
+ id: item.id !== undefined ? {
1584
+ set: item.id
1585
+ } : undefined,
1586
+ clientOrderId: item.clientOrderId !== undefined ? {
1587
+ set: item.clientOrderId
1588
+ } : undefined,
1589
+ qty: item.qty !== undefined ? {
1590
+ set: item.qty
1591
+ } : undefined,
1592
+ notional: item.notional !== undefined ? {
1593
+ set: item.notional
1594
+ } : undefined,
1595
+ side: item.side !== undefined ? {
1596
+ set: item.side
1597
+ } : undefined,
1598
+ type: item.type !== undefined ? {
1599
+ set: item.type
1600
+ } : undefined,
1601
+ orderClass: item.orderClass !== undefined ? {
1602
+ set: item.orderClass
1603
+ } : undefined,
1604
+ timeInForce: item.timeInForce !== undefined ? {
1605
+ set: item.timeInForce
1606
+ } : undefined,
1607
+ limitPrice: item.limitPrice !== undefined ? {
1608
+ set: item.limitPrice
1609
+ } : undefined,
1610
+ stopPrice: item.stopPrice !== undefined ? {
1611
+ set: item.stopPrice
1612
+ } : undefined,
1613
+ trailPrice: item.trailPrice !== undefined ? {
1614
+ set: item.trailPrice
1615
+ } : undefined,
1616
+ trailPercent: item.trailPercent !== undefined ? {
1617
+ set: item.trailPercent
1618
+ } : undefined,
1619
+ extendedHours: item.extendedHours !== undefined ? {
1620
+ set: item.extendedHours
1621
+ } : undefined,
1622
+ status: item.status !== undefined ? {
1623
+ set: item.status
1624
+ } : undefined,
1625
+ submittedAt: item.submittedAt !== undefined ? {
1626
+ set: item.submittedAt
1627
+ } : undefined,
1628
+ filledAt: item.filledAt !== undefined ? {
1629
+ set: item.filledAt
1630
+ } : undefined,
1631
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
1632
+ set: item.filledAvgPrice
1633
+ } : undefined,
1634
+ fee: item.fee !== undefined ? {
1635
+ set: item.fee
1636
+ } : undefined,
1637
+ strikePrice: item.strikePrice !== undefined ? {
1638
+ set: item.strikePrice
1639
+ } : undefined,
1640
+ expirationDate: item.expirationDate !== undefined ? {
1641
+ set: item.expirationDate
1642
+ } : undefined,
1643
+ optionType: item.optionType !== undefined ? {
1644
+ set: item.optionType
1645
+ } : undefined,
1646
+ stopLossId: item.stopLossId !== undefined ? {
1647
+ set: item.stopLossId
1648
+ } : undefined,
1649
+ takeProfitId: item.takeProfitId !== undefined ? {
1650
+ set: item.takeProfitId
1651
+ } : undefined,
1652
+ },
1653
+ create: {
1654
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1655
+ qty: item.qty !== undefined ? item.qty : undefined,
1656
+ notional: item.notional !== undefined ? item.notional : undefined,
1657
+ side: item.side !== undefined ? item.side : undefined,
1658
+ type: item.type !== undefined ? item.type : undefined,
1659
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1660
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1661
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1662
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
1663
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
1664
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
1665
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
1666
+ status: item.status !== undefined ? item.status : undefined,
1667
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
1668
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
1669
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
1670
+ fee: item.fee !== undefined ? item.fee : undefined,
1671
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
1672
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
1673
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1674
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
1675
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
1676
+ },
1677
+ }))
1678
+ } : undefined,
1679
+ positions: props.trade.asset.positions ? {
1680
+ upsert: props.trade.asset.positions.map((item) => ({
1681
+ where: {
1682
+ id: item.id !== undefined ? item.id : undefined,
1683
+ },
1684
+ update: {
1685
+ id: item.id !== undefined ? {
1686
+ set: item.id
1687
+ } : undefined,
1688
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
1689
+ set: item.averageEntryPrice
1690
+ } : undefined,
1691
+ qty: item.qty !== undefined ? {
1692
+ set: item.qty
1693
+ } : undefined,
1694
+ qtyAvailable: item.qtyAvailable !== undefined ? {
1695
+ set: item.qtyAvailable
1696
+ } : undefined,
1697
+ marketValue: item.marketValue !== undefined ? {
1698
+ set: item.marketValue
1699
+ } : undefined,
1700
+ costBasis: item.costBasis !== undefined ? {
1701
+ set: item.costBasis
1702
+ } : undefined,
1703
+ unrealizedPL: item.unrealizedPL !== undefined ? {
1704
+ set: item.unrealizedPL
1705
+ } : undefined,
1706
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
1707
+ set: item.unrealizedPLPC
1708
+ } : undefined,
1709
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
1710
+ set: item.unrealisedIntradayPL
1711
+ } : undefined,
1712
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
1713
+ set: item.unrealisedIntradayPLPC
1714
+ } : undefined,
1715
+ currentPrice: item.currentPrice !== undefined ? {
1716
+ set: item.currentPrice
1717
+ } : undefined,
1718
+ lastTradePrice: item.lastTradePrice !== undefined ? {
1719
+ set: item.lastTradePrice
1720
+ } : undefined,
1721
+ changeToday: item.changeToday !== undefined ? {
1722
+ set: item.changeToday
1723
+ } : undefined,
1724
+ assetMarginable: item.assetMarginable !== undefined ? {
1725
+ set: item.assetMarginable
1726
+ } : undefined,
1727
+ },
1728
+ create: {
1729
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1730
+ qty: item.qty !== undefined ? item.qty : undefined,
1731
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1732
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1733
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1734
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1735
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1736
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1737
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1738
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1739
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1740
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1741
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1742
+ },
1743
+ }))
1744
+ } : undefined,
1745
+ newsMentions: props.trade.asset.newsMentions ? {
1746
+ upsert: props.trade.asset.newsMentions.map((item) => ({
1747
+ where: {
1748
+ id: item.id !== undefined ? item.id : undefined,
1749
+ url: item.url !== undefined ? item.url : undefined,
1750
+ },
1751
+ update: {
1752
+ id: item.id !== undefined ? {
1753
+ set: item.id
1754
+ } : undefined,
1755
+ url: item.url !== undefined ? {
1756
+ set: item.url
1757
+ } : undefined,
1758
+ relevancyScore: item.relevancyScore !== undefined ? {
1759
+ set: item.relevancyScore
1760
+ } : undefined,
1761
+ sentimentScore: item.sentimentScore !== undefined ? {
1762
+ set: item.sentimentScore
1763
+ } : undefined,
1764
+ sentimentLabel: item.sentimentLabel !== undefined ? {
1765
+ set: item.sentimentLabel
1766
+ } : undefined,
1767
+ },
1768
+ create: {
1769
+ url: item.url !== undefined ? item.url : undefined,
1770
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1771
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1772
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1773
+ },
1774
+ }))
1775
+ } : undefined,
848
1776
  },
849
1777
  create: {
850
1778
  symbol: props.trade.asset.symbol !== undefined ? props.trade.asset.symbol : undefined,
@@ -902,6 +1830,88 @@ export const Action = {
902
1830
  exDividendDate: props.trade.asset.exDividendDate !== undefined ? props.trade.asset.exDividendDate : undefined,
903
1831
  askPrice: props.trade.asset.askPrice !== undefined ? props.trade.asset.askPrice : undefined,
904
1832
  bidPrice: props.trade.asset.bidPrice !== undefined ? props.trade.asset.bidPrice : undefined,
1833
+ orders: props.trade.asset.orders ?
1834
+ Array.isArray(props.trade.asset.orders) && props.trade.asset.orders.length > 0 && props.trade.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1835
+ connect: props.trade.asset.orders.map((item) => ({
1836
+ id: item.id
1837
+ }))
1838
+ }
1839
+ : { connectOrCreate: props.trade.asset.orders.map((item) => ({
1840
+ where: {
1841
+ id: item.id !== undefined ? item.id : undefined,
1842
+ },
1843
+ create: {
1844
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1845
+ qty: item.qty !== undefined ? item.qty : undefined,
1846
+ notional: item.notional !== undefined ? item.notional : undefined,
1847
+ side: item.side !== undefined ? item.side : undefined,
1848
+ type: item.type !== undefined ? item.type : undefined,
1849
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1850
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1851
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1852
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
1853
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
1854
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
1855
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
1856
+ status: item.status !== undefined ? item.status : undefined,
1857
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
1858
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
1859
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
1860
+ fee: item.fee !== undefined ? item.fee : undefined,
1861
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
1862
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
1863
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1864
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
1865
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
1866
+ },
1867
+ }))
1868
+ } : undefined,
1869
+ positions: props.trade.asset.positions ?
1870
+ Array.isArray(props.trade.asset.positions) && props.trade.asset.positions.length > 0 && props.trade.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1871
+ connect: props.trade.asset.positions.map((item) => ({
1872
+ id: item.id
1873
+ }))
1874
+ }
1875
+ : { connectOrCreate: props.trade.asset.positions.map((item) => ({
1876
+ where: {
1877
+ id: item.id !== undefined ? item.id : undefined,
1878
+ },
1879
+ create: {
1880
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
1881
+ qty: item.qty !== undefined ? item.qty : undefined,
1882
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
1883
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
1884
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
1885
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
1886
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
1887
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
1888
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
1889
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
1890
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
1891
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
1892
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
1893
+ },
1894
+ }))
1895
+ } : undefined,
1896
+ newsMentions: props.trade.asset.newsMentions ?
1897
+ Array.isArray(props.trade.asset.newsMentions) && props.trade.asset.newsMentions.length > 0 && props.trade.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1898
+ connect: props.trade.asset.newsMentions.map((item) => ({
1899
+ id: item.id
1900
+ }))
1901
+ }
1902
+ : { connectOrCreate: props.trade.asset.newsMentions.map((item) => ({
1903
+ where: {
1904
+ id: item.id !== undefined ? item.id : undefined,
1905
+ url: item.url !== undefined ? item.url : undefined,
1906
+ },
1907
+ create: {
1908
+ url: item.url !== undefined ? item.url : undefined,
1909
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1910
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1911
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1912
+ },
1913
+ }))
1914
+ } : undefined,
905
1915
  },
906
1916
  }
907
1917
  } : undefined,
@@ -938,6 +1948,115 @@ export const Action = {
938
1948
  maxOrderSize: props.trade.alpacaAccount.maxOrderSize !== undefined ? props.trade.alpacaAccount.maxOrderSize : undefined,
939
1949
  minPercentageChange: props.trade.alpacaAccount.minPercentageChange !== undefined ? props.trade.alpacaAccount.minPercentageChange : undefined,
940
1950
  volumeThreshold: props.trade.alpacaAccount.volumeThreshold !== undefined ? props.trade.alpacaAccount.volumeThreshold : undefined,
1951
+ user: props.trade.alpacaAccount.user ?
1952
+ typeof props.trade.alpacaAccount.user === 'object' && Object.keys(props.trade.alpacaAccount.user).length === 1 && Object.keys(props.trade.alpacaAccount.user)[0] === 'id'
1953
+ ? { connect: {
1954
+ id: props.trade.alpacaAccount.user.id
1955
+ }
1956
+ }
1957
+ : { connectOrCreate: {
1958
+ where: {
1959
+ id: props.trade.alpacaAccount.user.id !== undefined ? props.trade.alpacaAccount.user.id : undefined,
1960
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
1961
+ name: props.trade.alpacaAccount.user.name !== undefined ? {
1962
+ equals: props.trade.alpacaAccount.user.name
1963
+ } : undefined,
1964
+ },
1965
+ create: {
1966
+ name: props.trade.alpacaAccount.user.name !== undefined ? props.trade.alpacaAccount.user.name : undefined,
1967
+ email: props.trade.alpacaAccount.user.email !== undefined ? props.trade.alpacaAccount.user.email : undefined,
1968
+ emailVerified: props.trade.alpacaAccount.user.emailVerified !== undefined ? props.trade.alpacaAccount.user.emailVerified : undefined,
1969
+ image: props.trade.alpacaAccount.user.image !== undefined ? props.trade.alpacaAccount.user.image : undefined,
1970
+ role: props.trade.alpacaAccount.user.role !== undefined ? props.trade.alpacaAccount.user.role : undefined,
1971
+ bio: props.trade.alpacaAccount.user.bio !== undefined ? props.trade.alpacaAccount.user.bio : undefined,
1972
+ jobTitle: props.trade.alpacaAccount.user.jobTitle !== undefined ? props.trade.alpacaAccount.user.jobTitle : undefined,
1973
+ currentAccount: props.trade.alpacaAccount.user.currentAccount !== undefined ? props.trade.alpacaAccount.user.currentAccount : undefined,
1974
+ plan: props.trade.alpacaAccount.user.plan !== undefined ? props.trade.alpacaAccount.user.plan : undefined,
1975
+ openaiAPIKey: props.trade.alpacaAccount.user.openaiAPIKey !== undefined ? props.trade.alpacaAccount.user.openaiAPIKey : undefined,
1976
+ openaiModel: props.trade.alpacaAccount.user.openaiModel !== undefined ? props.trade.alpacaAccount.user.openaiModel : undefined,
1977
+ },
1978
+ }
1979
+ } : undefined,
1980
+ orders: props.trade.alpacaAccount.orders ?
1981
+ Array.isArray(props.trade.alpacaAccount.orders) && props.trade.alpacaAccount.orders.length > 0 && props.trade.alpacaAccount.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1982
+ connect: props.trade.alpacaAccount.orders.map((item) => ({
1983
+ id: item.id
1984
+ }))
1985
+ }
1986
+ : { connectOrCreate: props.trade.alpacaAccount.orders.map((item) => ({
1987
+ where: {
1988
+ id: item.id !== undefined ? item.id : undefined,
1989
+ },
1990
+ create: {
1991
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1992
+ qty: item.qty !== undefined ? item.qty : undefined,
1993
+ notional: item.notional !== undefined ? item.notional : undefined,
1994
+ side: item.side !== undefined ? item.side : undefined,
1995
+ type: item.type !== undefined ? item.type : undefined,
1996
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1997
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1998
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1999
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
2000
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
2001
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
2002
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
2003
+ status: item.status !== undefined ? item.status : undefined,
2004
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
2005
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
2006
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
2007
+ fee: item.fee !== undefined ? item.fee : undefined,
2008
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
2009
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
2010
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2011
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
2012
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
2013
+ },
2014
+ }))
2015
+ } : undefined,
2016
+ positions: props.trade.alpacaAccount.positions ?
2017
+ Array.isArray(props.trade.alpacaAccount.positions) && props.trade.alpacaAccount.positions.length > 0 && props.trade.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2018
+ connect: props.trade.alpacaAccount.positions.map((item) => ({
2019
+ id: item.id
2020
+ }))
2021
+ }
2022
+ : { connectOrCreate: props.trade.alpacaAccount.positions.map((item) => ({
2023
+ where: {
2024
+ id: item.id !== undefined ? item.id : undefined,
2025
+ },
2026
+ create: {
2027
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2028
+ qty: item.qty !== undefined ? item.qty : undefined,
2029
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2030
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2031
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2032
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2033
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2034
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2035
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2036
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2037
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2038
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2039
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2040
+ },
2041
+ }))
2042
+ } : undefined,
2043
+ alerts: props.trade.alpacaAccount.alerts ?
2044
+ Array.isArray(props.trade.alpacaAccount.alerts) && props.trade.alpacaAccount.alerts.length > 0 && props.trade.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2045
+ connect: props.trade.alpacaAccount.alerts.map((item) => ({
2046
+ id: item.id
2047
+ }))
2048
+ }
2049
+ : { connectOrCreate: props.trade.alpacaAccount.alerts.map((item) => ({
2050
+ where: {
2051
+ id: item.id !== undefined ? item.id : undefined,
2052
+ },
2053
+ create: {
2054
+ message: item.message !== undefined ? item.message : undefined,
2055
+ type: item.type !== undefined ? item.type : undefined,
2056
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
2057
+ },
2058
+ }))
2059
+ } : undefined,
941
2060
  },
942
2061
  }
943
2062
  } : undefined,
@@ -1009,6 +2128,88 @@ export const Action = {
1009
2128
  exDividendDate: props.trade.asset.exDividendDate !== undefined ? props.trade.asset.exDividendDate : undefined,
1010
2129
  askPrice: props.trade.asset.askPrice !== undefined ? props.trade.asset.askPrice : undefined,
1011
2130
  bidPrice: props.trade.asset.bidPrice !== undefined ? props.trade.asset.bidPrice : undefined,
2131
+ orders: props.trade.asset.orders ?
2132
+ Array.isArray(props.trade.asset.orders) && props.trade.asset.orders.length > 0 && props.trade.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2133
+ connect: props.trade.asset.orders.map((item) => ({
2134
+ id: item.id
2135
+ }))
2136
+ }
2137
+ : { connectOrCreate: props.trade.asset.orders.map((item) => ({
2138
+ where: {
2139
+ id: item.id !== undefined ? item.id : undefined,
2140
+ },
2141
+ create: {
2142
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
2143
+ qty: item.qty !== undefined ? item.qty : undefined,
2144
+ notional: item.notional !== undefined ? item.notional : undefined,
2145
+ side: item.side !== undefined ? item.side : undefined,
2146
+ type: item.type !== undefined ? item.type : undefined,
2147
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
2148
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
2149
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
2150
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
2151
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
2152
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
2153
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
2154
+ status: item.status !== undefined ? item.status : undefined,
2155
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
2156
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
2157
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
2158
+ fee: item.fee !== undefined ? item.fee : undefined,
2159
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
2160
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
2161
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2162
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
2163
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
2164
+ },
2165
+ }))
2166
+ } : undefined,
2167
+ positions: props.trade.asset.positions ?
2168
+ Array.isArray(props.trade.asset.positions) && props.trade.asset.positions.length > 0 && props.trade.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2169
+ connect: props.trade.asset.positions.map((item) => ({
2170
+ id: item.id
2171
+ }))
2172
+ }
2173
+ : { connectOrCreate: props.trade.asset.positions.map((item) => ({
2174
+ where: {
2175
+ id: item.id !== undefined ? item.id : undefined,
2176
+ },
2177
+ create: {
2178
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2179
+ qty: item.qty !== undefined ? item.qty : undefined,
2180
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2181
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2182
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2183
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2184
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2185
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2186
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2187
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2188
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2189
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2190
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2191
+ },
2192
+ }))
2193
+ } : undefined,
2194
+ newsMentions: props.trade.asset.newsMentions ?
2195
+ Array.isArray(props.trade.asset.newsMentions) && props.trade.asset.newsMentions.length > 0 && props.trade.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2196
+ connect: props.trade.asset.newsMentions.map((item) => ({
2197
+ id: item.id
2198
+ }))
2199
+ }
2200
+ : { connectOrCreate: props.trade.asset.newsMentions.map((item) => ({
2201
+ where: {
2202
+ id: item.id !== undefined ? item.id : undefined,
2203
+ url: item.url !== undefined ? item.url : undefined,
2204
+ },
2205
+ create: {
2206
+ url: item.url !== undefined ? item.url : undefined,
2207
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
2208
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
2209
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
2210
+ },
2211
+ }))
2212
+ } : undefined,
1012
2213
  },
1013
2214
  }
1014
2215
  } : undefined,
@@ -1178,6 +2379,222 @@ export const Action = {
1178
2379
  volumeThreshold: props.order.alpacaAccount.volumeThreshold !== undefined ? {
1179
2380
  set: props.order.alpacaAccount.volumeThreshold
1180
2381
  } : undefined,
2382
+ user: props.order.alpacaAccount.user ? {
2383
+ upsert: {
2384
+ where: {
2385
+ id: props.order.alpacaAccount.user.id !== undefined ? {
2386
+ equals: props.order.alpacaAccount.user.id
2387
+ } : undefined,
2388
+ name: props.order.alpacaAccount.user.name !== undefined ? {
2389
+ equals: props.order.alpacaAccount.user.name
2390
+ } : undefined,
2391
+ email: props.order.alpacaAccount.user.email !== undefined ? {
2392
+ equals: props.order.alpacaAccount.user.email
2393
+ } : undefined,
2394
+ },
2395
+ update: {
2396
+ id: props.order.alpacaAccount.user.id !== undefined ? {
2397
+ set: props.order.alpacaAccount.user.id
2398
+ } : undefined,
2399
+ name: props.order.alpacaAccount.user.name !== undefined ? {
2400
+ set: props.order.alpacaAccount.user.name
2401
+ } : undefined,
2402
+ email: props.order.alpacaAccount.user.email !== undefined ? {
2403
+ set: props.order.alpacaAccount.user.email
2404
+ } : undefined,
2405
+ emailVerified: props.order.alpacaAccount.user.emailVerified !== undefined ? {
2406
+ set: props.order.alpacaAccount.user.emailVerified
2407
+ } : undefined,
2408
+ image: props.order.alpacaAccount.user.image !== undefined ? {
2409
+ set: props.order.alpacaAccount.user.image
2410
+ } : undefined,
2411
+ role: props.order.alpacaAccount.user.role !== undefined ? {
2412
+ set: props.order.alpacaAccount.user.role
2413
+ } : undefined,
2414
+ bio: props.order.alpacaAccount.user.bio !== undefined ? {
2415
+ set: props.order.alpacaAccount.user.bio
2416
+ } : undefined,
2417
+ jobTitle: props.order.alpacaAccount.user.jobTitle !== undefined ? {
2418
+ set: props.order.alpacaAccount.user.jobTitle
2419
+ } : undefined,
2420
+ currentAccount: props.order.alpacaAccount.user.currentAccount !== undefined ? {
2421
+ set: props.order.alpacaAccount.user.currentAccount
2422
+ } : undefined,
2423
+ plan: props.order.alpacaAccount.user.plan !== undefined ? {
2424
+ set: props.order.alpacaAccount.user.plan
2425
+ } : undefined,
2426
+ openaiAPIKey: props.order.alpacaAccount.user.openaiAPIKey !== undefined ? {
2427
+ set: props.order.alpacaAccount.user.openaiAPIKey
2428
+ } : undefined,
2429
+ openaiModel: props.order.alpacaAccount.user.openaiModel !== undefined ? {
2430
+ set: props.order.alpacaAccount.user.openaiModel
2431
+ } : undefined,
2432
+ },
2433
+ create: {
2434
+ name: props.order.alpacaAccount.user.name !== undefined ? props.order.alpacaAccount.user.name : undefined,
2435
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
2436
+ emailVerified: props.order.alpacaAccount.user.emailVerified !== undefined ? props.order.alpacaAccount.user.emailVerified : undefined,
2437
+ image: props.order.alpacaAccount.user.image !== undefined ? props.order.alpacaAccount.user.image : undefined,
2438
+ role: props.order.alpacaAccount.user.role !== undefined ? props.order.alpacaAccount.user.role : undefined,
2439
+ bio: props.order.alpacaAccount.user.bio !== undefined ? props.order.alpacaAccount.user.bio : undefined,
2440
+ jobTitle: props.order.alpacaAccount.user.jobTitle !== undefined ? props.order.alpacaAccount.user.jobTitle : undefined,
2441
+ currentAccount: props.order.alpacaAccount.user.currentAccount !== undefined ? props.order.alpacaAccount.user.currentAccount : undefined,
2442
+ plan: props.order.alpacaAccount.user.plan !== undefined ? props.order.alpacaAccount.user.plan : undefined,
2443
+ openaiAPIKey: props.order.alpacaAccount.user.openaiAPIKey !== undefined ? props.order.alpacaAccount.user.openaiAPIKey : undefined,
2444
+ openaiModel: props.order.alpacaAccount.user.openaiModel !== undefined ? props.order.alpacaAccount.user.openaiModel : undefined,
2445
+ },
2446
+ }
2447
+ } : undefined,
2448
+ trades: props.order.alpacaAccount.trades ? {
2449
+ upsert: props.order.alpacaAccount.trades.map((item) => ({
2450
+ where: {
2451
+ id: item.id !== undefined ? item.id : undefined,
2452
+ },
2453
+ update: {
2454
+ id: item.id !== undefined ? {
2455
+ set: item.id
2456
+ } : undefined,
2457
+ qty: item.qty !== undefined ? {
2458
+ set: item.qty
2459
+ } : undefined,
2460
+ price: item.price !== undefined ? {
2461
+ set: item.price
2462
+ } : undefined,
2463
+ total: item.total !== undefined ? {
2464
+ set: item.total
2465
+ } : undefined,
2466
+ optionType: item.optionType !== undefined ? {
2467
+ set: item.optionType
2468
+ } : undefined,
2469
+ signal: item.signal !== undefined ? {
2470
+ set: item.signal
2471
+ } : undefined,
2472
+ strategy: item.strategy !== undefined ? {
2473
+ set: item.strategy
2474
+ } : undefined,
2475
+ analysis: item.analysis !== undefined ? {
2476
+ set: item.analysis
2477
+ } : undefined,
2478
+ summary: item.summary !== undefined ? {
2479
+ set: item.summary
2480
+ } : undefined,
2481
+ confidence: item.confidence !== undefined ? {
2482
+ set: item.confidence
2483
+ } : undefined,
2484
+ timestamp: item.timestamp !== undefined ? {
2485
+ set: item.timestamp
2486
+ } : undefined,
2487
+ status: item.status !== undefined ? {
2488
+ set: item.status
2489
+ } : undefined,
2490
+ },
2491
+ create: {
2492
+ qty: item.qty !== undefined ? item.qty : undefined,
2493
+ price: item.price !== undefined ? item.price : undefined,
2494
+ total: item.total !== undefined ? item.total : undefined,
2495
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2496
+ signal: item.signal !== undefined ? item.signal : undefined,
2497
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2498
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2499
+ summary: item.summary !== undefined ? item.summary : undefined,
2500
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2501
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2502
+ status: item.status !== undefined ? item.status : undefined,
2503
+ },
2504
+ }))
2505
+ } : undefined,
2506
+ positions: props.order.alpacaAccount.positions ? {
2507
+ upsert: props.order.alpacaAccount.positions.map((item) => ({
2508
+ where: {
2509
+ id: item.id !== undefined ? item.id : undefined,
2510
+ },
2511
+ update: {
2512
+ id: item.id !== undefined ? {
2513
+ set: item.id
2514
+ } : undefined,
2515
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
2516
+ set: item.averageEntryPrice
2517
+ } : undefined,
2518
+ qty: item.qty !== undefined ? {
2519
+ set: item.qty
2520
+ } : undefined,
2521
+ qtyAvailable: item.qtyAvailable !== undefined ? {
2522
+ set: item.qtyAvailable
2523
+ } : undefined,
2524
+ marketValue: item.marketValue !== undefined ? {
2525
+ set: item.marketValue
2526
+ } : undefined,
2527
+ costBasis: item.costBasis !== undefined ? {
2528
+ set: item.costBasis
2529
+ } : undefined,
2530
+ unrealizedPL: item.unrealizedPL !== undefined ? {
2531
+ set: item.unrealizedPL
2532
+ } : undefined,
2533
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
2534
+ set: item.unrealizedPLPC
2535
+ } : undefined,
2536
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
2537
+ set: item.unrealisedIntradayPL
2538
+ } : undefined,
2539
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
2540
+ set: item.unrealisedIntradayPLPC
2541
+ } : undefined,
2542
+ currentPrice: item.currentPrice !== undefined ? {
2543
+ set: item.currentPrice
2544
+ } : undefined,
2545
+ lastTradePrice: item.lastTradePrice !== undefined ? {
2546
+ set: item.lastTradePrice
2547
+ } : undefined,
2548
+ changeToday: item.changeToday !== undefined ? {
2549
+ set: item.changeToday
2550
+ } : undefined,
2551
+ assetMarginable: item.assetMarginable !== undefined ? {
2552
+ set: item.assetMarginable
2553
+ } : undefined,
2554
+ },
2555
+ create: {
2556
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2557
+ qty: item.qty !== undefined ? item.qty : undefined,
2558
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2559
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2560
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2561
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2562
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2563
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2564
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2565
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2566
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2567
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2568
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2569
+ },
2570
+ }))
2571
+ } : undefined,
2572
+ alerts: props.order.alpacaAccount.alerts ? {
2573
+ upsert: props.order.alpacaAccount.alerts.map((item) => ({
2574
+ where: {
2575
+ id: item.id !== undefined ? item.id : undefined,
2576
+ },
2577
+ update: {
2578
+ id: item.id !== undefined ? {
2579
+ set: item.id
2580
+ } : undefined,
2581
+ message: item.message !== undefined ? {
2582
+ set: item.message
2583
+ } : undefined,
2584
+ type: item.type !== undefined ? {
2585
+ set: item.type
2586
+ } : undefined,
2587
+ isRead: item.isRead !== undefined ? {
2588
+ set: item.isRead
2589
+ } : undefined,
2590
+ },
2591
+ create: {
2592
+ message: item.message !== undefined ? item.message : undefined,
2593
+ type: item.type !== undefined ? item.type : undefined,
2594
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
2595
+ },
2596
+ }))
2597
+ } : undefined,
1181
2598
  },
1182
2599
  create: {
1183
2600
  type: props.order.alpacaAccount.type !== undefined ? props.order.alpacaAccount.type : undefined,
@@ -1189,6 +2606,104 @@ export const Action = {
1189
2606
  maxOrderSize: props.order.alpacaAccount.maxOrderSize !== undefined ? props.order.alpacaAccount.maxOrderSize : undefined,
1190
2607
  minPercentageChange: props.order.alpacaAccount.minPercentageChange !== undefined ? props.order.alpacaAccount.minPercentageChange : undefined,
1191
2608
  volumeThreshold: props.order.alpacaAccount.volumeThreshold !== undefined ? props.order.alpacaAccount.volumeThreshold : undefined,
2609
+ user: props.order.alpacaAccount.user ?
2610
+ typeof props.order.alpacaAccount.user === 'object' && Object.keys(props.order.alpacaAccount.user).length === 1 && Object.keys(props.order.alpacaAccount.user)[0] === 'id'
2611
+ ? { connect: {
2612
+ id: props.order.alpacaAccount.user.id
2613
+ }
2614
+ }
2615
+ : { connectOrCreate: {
2616
+ where: {
2617
+ id: props.order.alpacaAccount.user.id !== undefined ? props.order.alpacaAccount.user.id : undefined,
2618
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
2619
+ name: props.order.alpacaAccount.user.name !== undefined ? {
2620
+ equals: props.order.alpacaAccount.user.name
2621
+ } : undefined,
2622
+ },
2623
+ create: {
2624
+ name: props.order.alpacaAccount.user.name !== undefined ? props.order.alpacaAccount.user.name : undefined,
2625
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
2626
+ emailVerified: props.order.alpacaAccount.user.emailVerified !== undefined ? props.order.alpacaAccount.user.emailVerified : undefined,
2627
+ image: props.order.alpacaAccount.user.image !== undefined ? props.order.alpacaAccount.user.image : undefined,
2628
+ role: props.order.alpacaAccount.user.role !== undefined ? props.order.alpacaAccount.user.role : undefined,
2629
+ bio: props.order.alpacaAccount.user.bio !== undefined ? props.order.alpacaAccount.user.bio : undefined,
2630
+ jobTitle: props.order.alpacaAccount.user.jobTitle !== undefined ? props.order.alpacaAccount.user.jobTitle : undefined,
2631
+ currentAccount: props.order.alpacaAccount.user.currentAccount !== undefined ? props.order.alpacaAccount.user.currentAccount : undefined,
2632
+ plan: props.order.alpacaAccount.user.plan !== undefined ? props.order.alpacaAccount.user.plan : undefined,
2633
+ openaiAPIKey: props.order.alpacaAccount.user.openaiAPIKey !== undefined ? props.order.alpacaAccount.user.openaiAPIKey : undefined,
2634
+ openaiModel: props.order.alpacaAccount.user.openaiModel !== undefined ? props.order.alpacaAccount.user.openaiModel : undefined,
2635
+ },
2636
+ }
2637
+ } : undefined,
2638
+ trades: props.order.alpacaAccount.trades ?
2639
+ 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) ? {
2640
+ connect: props.order.alpacaAccount.trades.map((item) => ({
2641
+ id: item.id
2642
+ }))
2643
+ }
2644
+ : { connectOrCreate: props.order.alpacaAccount.trades.map((item) => ({
2645
+ where: {
2646
+ id: item.id !== undefined ? item.id : undefined,
2647
+ },
2648
+ create: {
2649
+ qty: item.qty !== undefined ? item.qty : undefined,
2650
+ price: item.price !== undefined ? item.price : undefined,
2651
+ total: item.total !== undefined ? item.total : undefined,
2652
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2653
+ signal: item.signal !== undefined ? item.signal : undefined,
2654
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2655
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2656
+ summary: item.summary !== undefined ? item.summary : undefined,
2657
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2658
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2659
+ status: item.status !== undefined ? item.status : undefined,
2660
+ },
2661
+ }))
2662
+ } : undefined,
2663
+ positions: props.order.alpacaAccount.positions ?
2664
+ 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) ? {
2665
+ connect: props.order.alpacaAccount.positions.map((item) => ({
2666
+ id: item.id
2667
+ }))
2668
+ }
2669
+ : { connectOrCreate: props.order.alpacaAccount.positions.map((item) => ({
2670
+ where: {
2671
+ id: item.id !== undefined ? item.id : undefined,
2672
+ },
2673
+ create: {
2674
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2675
+ qty: item.qty !== undefined ? item.qty : undefined,
2676
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2677
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2678
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2679
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2680
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2681
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2682
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2683
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2684
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2685
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2686
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2687
+ },
2688
+ }))
2689
+ } : undefined,
2690
+ alerts: props.order.alpacaAccount.alerts ?
2691
+ 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) ? {
2692
+ connect: props.order.alpacaAccount.alerts.map((item) => ({
2693
+ id: item.id
2694
+ }))
2695
+ }
2696
+ : { connectOrCreate: props.order.alpacaAccount.alerts.map((item) => ({
2697
+ where: {
2698
+ id: item.id !== undefined ? item.id : undefined,
2699
+ },
2700
+ create: {
2701
+ message: item.message !== undefined ? item.message : undefined,
2702
+ type: item.type !== undefined ? item.type : undefined,
2703
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
2704
+ },
2705
+ }))
2706
+ } : undefined,
1192
2707
  },
1193
2708
  }
1194
2709
  } : undefined,
@@ -1374,6 +2889,161 @@ export const Action = {
1374
2889
  bidPrice: props.order.asset.bidPrice !== undefined ? {
1375
2890
  set: props.order.asset.bidPrice
1376
2891
  } : undefined,
2892
+ trades: props.order.asset.trades ? {
2893
+ upsert: props.order.asset.trades.map((item) => ({
2894
+ where: {
2895
+ id: item.id !== undefined ? item.id : undefined,
2896
+ },
2897
+ update: {
2898
+ id: item.id !== undefined ? {
2899
+ set: item.id
2900
+ } : undefined,
2901
+ qty: item.qty !== undefined ? {
2902
+ set: item.qty
2903
+ } : undefined,
2904
+ price: item.price !== undefined ? {
2905
+ set: item.price
2906
+ } : undefined,
2907
+ total: item.total !== undefined ? {
2908
+ set: item.total
2909
+ } : undefined,
2910
+ optionType: item.optionType !== undefined ? {
2911
+ set: item.optionType
2912
+ } : undefined,
2913
+ signal: item.signal !== undefined ? {
2914
+ set: item.signal
2915
+ } : undefined,
2916
+ strategy: item.strategy !== undefined ? {
2917
+ set: item.strategy
2918
+ } : undefined,
2919
+ analysis: item.analysis !== undefined ? {
2920
+ set: item.analysis
2921
+ } : undefined,
2922
+ summary: item.summary !== undefined ? {
2923
+ set: item.summary
2924
+ } : undefined,
2925
+ confidence: item.confidence !== undefined ? {
2926
+ set: item.confidence
2927
+ } : undefined,
2928
+ timestamp: item.timestamp !== undefined ? {
2929
+ set: item.timestamp
2930
+ } : undefined,
2931
+ status: item.status !== undefined ? {
2932
+ set: item.status
2933
+ } : undefined,
2934
+ },
2935
+ create: {
2936
+ qty: item.qty !== undefined ? item.qty : undefined,
2937
+ price: item.price !== undefined ? item.price : undefined,
2938
+ total: item.total !== undefined ? item.total : undefined,
2939
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2940
+ signal: item.signal !== undefined ? item.signal : undefined,
2941
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
2942
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
2943
+ summary: item.summary !== undefined ? item.summary : undefined,
2944
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
2945
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
2946
+ status: item.status !== undefined ? item.status : undefined,
2947
+ },
2948
+ }))
2949
+ } : undefined,
2950
+ positions: props.order.asset.positions ? {
2951
+ upsert: props.order.asset.positions.map((item) => ({
2952
+ where: {
2953
+ id: item.id !== undefined ? item.id : undefined,
2954
+ },
2955
+ update: {
2956
+ id: item.id !== undefined ? {
2957
+ set: item.id
2958
+ } : undefined,
2959
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
2960
+ set: item.averageEntryPrice
2961
+ } : undefined,
2962
+ qty: item.qty !== undefined ? {
2963
+ set: item.qty
2964
+ } : undefined,
2965
+ qtyAvailable: item.qtyAvailable !== undefined ? {
2966
+ set: item.qtyAvailable
2967
+ } : undefined,
2968
+ marketValue: item.marketValue !== undefined ? {
2969
+ set: item.marketValue
2970
+ } : undefined,
2971
+ costBasis: item.costBasis !== undefined ? {
2972
+ set: item.costBasis
2973
+ } : undefined,
2974
+ unrealizedPL: item.unrealizedPL !== undefined ? {
2975
+ set: item.unrealizedPL
2976
+ } : undefined,
2977
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
2978
+ set: item.unrealizedPLPC
2979
+ } : undefined,
2980
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
2981
+ set: item.unrealisedIntradayPL
2982
+ } : undefined,
2983
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
2984
+ set: item.unrealisedIntradayPLPC
2985
+ } : undefined,
2986
+ currentPrice: item.currentPrice !== undefined ? {
2987
+ set: item.currentPrice
2988
+ } : undefined,
2989
+ lastTradePrice: item.lastTradePrice !== undefined ? {
2990
+ set: item.lastTradePrice
2991
+ } : undefined,
2992
+ changeToday: item.changeToday !== undefined ? {
2993
+ set: item.changeToday
2994
+ } : undefined,
2995
+ assetMarginable: item.assetMarginable !== undefined ? {
2996
+ set: item.assetMarginable
2997
+ } : undefined,
2998
+ },
2999
+ create: {
3000
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3001
+ qty: item.qty !== undefined ? item.qty : undefined,
3002
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3003
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3004
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3005
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3006
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3007
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3008
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3009
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3010
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3011
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3012
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3013
+ },
3014
+ }))
3015
+ } : undefined,
3016
+ newsMentions: props.order.asset.newsMentions ? {
3017
+ upsert: props.order.asset.newsMentions.map((item) => ({
3018
+ where: {
3019
+ id: item.id !== undefined ? item.id : undefined,
3020
+ url: item.url !== undefined ? item.url : undefined,
3021
+ },
3022
+ update: {
3023
+ id: item.id !== undefined ? {
3024
+ set: item.id
3025
+ } : undefined,
3026
+ url: item.url !== undefined ? {
3027
+ set: item.url
3028
+ } : undefined,
3029
+ relevancyScore: item.relevancyScore !== undefined ? {
3030
+ set: item.relevancyScore
3031
+ } : undefined,
3032
+ sentimentScore: item.sentimentScore !== undefined ? {
3033
+ set: item.sentimentScore
3034
+ } : undefined,
3035
+ sentimentLabel: item.sentimentLabel !== undefined ? {
3036
+ set: item.sentimentLabel
3037
+ } : undefined,
3038
+ },
3039
+ create: {
3040
+ url: item.url !== undefined ? item.url : undefined,
3041
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3042
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3043
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3044
+ },
3045
+ }))
3046
+ } : undefined,
1377
3047
  },
1378
3048
  create: {
1379
3049
  symbol: props.order.asset.symbol !== undefined ? props.order.asset.symbol : undefined,
@@ -1431,6 +3101,77 @@ export const Action = {
1431
3101
  exDividendDate: props.order.asset.exDividendDate !== undefined ? props.order.asset.exDividendDate : undefined,
1432
3102
  askPrice: props.order.asset.askPrice !== undefined ? props.order.asset.askPrice : undefined,
1433
3103
  bidPrice: props.order.asset.bidPrice !== undefined ? props.order.asset.bidPrice : undefined,
3104
+ trades: props.order.asset.trades ?
3105
+ 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) ? {
3106
+ connect: props.order.asset.trades.map((item) => ({
3107
+ id: item.id
3108
+ }))
3109
+ }
3110
+ : { connectOrCreate: props.order.asset.trades.map((item) => ({
3111
+ where: {
3112
+ id: item.id !== undefined ? item.id : undefined,
3113
+ },
3114
+ create: {
3115
+ qty: item.qty !== undefined ? item.qty : undefined,
3116
+ price: item.price !== undefined ? item.price : undefined,
3117
+ total: item.total !== undefined ? item.total : undefined,
3118
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3119
+ signal: item.signal !== undefined ? item.signal : undefined,
3120
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3121
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3122
+ summary: item.summary !== undefined ? item.summary : undefined,
3123
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3124
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3125
+ status: item.status !== undefined ? item.status : undefined,
3126
+ },
3127
+ }))
3128
+ } : undefined,
3129
+ positions: props.order.asset.positions ?
3130
+ 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) ? {
3131
+ connect: props.order.asset.positions.map((item) => ({
3132
+ id: item.id
3133
+ }))
3134
+ }
3135
+ : { connectOrCreate: props.order.asset.positions.map((item) => ({
3136
+ where: {
3137
+ id: item.id !== undefined ? item.id : undefined,
3138
+ },
3139
+ create: {
3140
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3141
+ qty: item.qty !== undefined ? item.qty : undefined,
3142
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3143
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3144
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3145
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3146
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3147
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3148
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3149
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3150
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3151
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3152
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3153
+ },
3154
+ }))
3155
+ } : undefined,
3156
+ newsMentions: props.order.asset.newsMentions ?
3157
+ 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) ? {
3158
+ connect: props.order.asset.newsMentions.map((item) => ({
3159
+ id: item.id
3160
+ }))
3161
+ }
3162
+ : { connectOrCreate: props.order.asset.newsMentions.map((item) => ({
3163
+ where: {
3164
+ id: item.id !== undefined ? item.id : undefined,
3165
+ url: item.url !== undefined ? item.url : undefined,
3166
+ },
3167
+ create: {
3168
+ url: item.url !== undefined ? item.url : undefined,
3169
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3170
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3171
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3172
+ },
3173
+ }))
3174
+ } : undefined,
1434
3175
  },
1435
3176
  }
1436
3177
  } : undefined,
@@ -1510,6 +3251,104 @@ export const Action = {
1510
3251
  maxOrderSize: props.order.alpacaAccount.maxOrderSize !== undefined ? props.order.alpacaAccount.maxOrderSize : undefined,
1511
3252
  minPercentageChange: props.order.alpacaAccount.minPercentageChange !== undefined ? props.order.alpacaAccount.minPercentageChange : undefined,
1512
3253
  volumeThreshold: props.order.alpacaAccount.volumeThreshold !== undefined ? props.order.alpacaAccount.volumeThreshold : undefined,
3254
+ user: props.order.alpacaAccount.user ?
3255
+ typeof props.order.alpacaAccount.user === 'object' && Object.keys(props.order.alpacaAccount.user).length === 1 && Object.keys(props.order.alpacaAccount.user)[0] === 'id'
3256
+ ? { connect: {
3257
+ id: props.order.alpacaAccount.user.id
3258
+ }
3259
+ }
3260
+ : { connectOrCreate: {
3261
+ where: {
3262
+ id: props.order.alpacaAccount.user.id !== undefined ? props.order.alpacaAccount.user.id : undefined,
3263
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
3264
+ name: props.order.alpacaAccount.user.name !== undefined ? {
3265
+ equals: props.order.alpacaAccount.user.name
3266
+ } : undefined,
3267
+ },
3268
+ create: {
3269
+ name: props.order.alpacaAccount.user.name !== undefined ? props.order.alpacaAccount.user.name : undefined,
3270
+ email: props.order.alpacaAccount.user.email !== undefined ? props.order.alpacaAccount.user.email : undefined,
3271
+ emailVerified: props.order.alpacaAccount.user.emailVerified !== undefined ? props.order.alpacaAccount.user.emailVerified : undefined,
3272
+ image: props.order.alpacaAccount.user.image !== undefined ? props.order.alpacaAccount.user.image : undefined,
3273
+ role: props.order.alpacaAccount.user.role !== undefined ? props.order.alpacaAccount.user.role : undefined,
3274
+ bio: props.order.alpacaAccount.user.bio !== undefined ? props.order.alpacaAccount.user.bio : undefined,
3275
+ jobTitle: props.order.alpacaAccount.user.jobTitle !== undefined ? props.order.alpacaAccount.user.jobTitle : undefined,
3276
+ currentAccount: props.order.alpacaAccount.user.currentAccount !== undefined ? props.order.alpacaAccount.user.currentAccount : undefined,
3277
+ plan: props.order.alpacaAccount.user.plan !== undefined ? props.order.alpacaAccount.user.plan : undefined,
3278
+ openaiAPIKey: props.order.alpacaAccount.user.openaiAPIKey !== undefined ? props.order.alpacaAccount.user.openaiAPIKey : undefined,
3279
+ openaiModel: props.order.alpacaAccount.user.openaiModel !== undefined ? props.order.alpacaAccount.user.openaiModel : undefined,
3280
+ },
3281
+ }
3282
+ } : undefined,
3283
+ trades: props.order.alpacaAccount.trades ?
3284
+ 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) ? {
3285
+ connect: props.order.alpacaAccount.trades.map((item) => ({
3286
+ id: item.id
3287
+ }))
3288
+ }
3289
+ : { connectOrCreate: props.order.alpacaAccount.trades.map((item) => ({
3290
+ where: {
3291
+ id: item.id !== undefined ? item.id : undefined,
3292
+ },
3293
+ create: {
3294
+ qty: item.qty !== undefined ? item.qty : undefined,
3295
+ price: item.price !== undefined ? item.price : undefined,
3296
+ total: item.total !== undefined ? item.total : undefined,
3297
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3298
+ signal: item.signal !== undefined ? item.signal : undefined,
3299
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3300
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3301
+ summary: item.summary !== undefined ? item.summary : undefined,
3302
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3303
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3304
+ status: item.status !== undefined ? item.status : undefined,
3305
+ },
3306
+ }))
3307
+ } : undefined,
3308
+ positions: props.order.alpacaAccount.positions ?
3309
+ 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) ? {
3310
+ connect: props.order.alpacaAccount.positions.map((item) => ({
3311
+ id: item.id
3312
+ }))
3313
+ }
3314
+ : { connectOrCreate: props.order.alpacaAccount.positions.map((item) => ({
3315
+ where: {
3316
+ id: item.id !== undefined ? item.id : undefined,
3317
+ },
3318
+ create: {
3319
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3320
+ qty: item.qty !== undefined ? item.qty : undefined,
3321
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3322
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3323
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3324
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3325
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3326
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3327
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3328
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3329
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3330
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3331
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3332
+ },
3333
+ }))
3334
+ } : undefined,
3335
+ alerts: props.order.alpacaAccount.alerts ?
3336
+ 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) ? {
3337
+ connect: props.order.alpacaAccount.alerts.map((item) => ({
3338
+ id: item.id
3339
+ }))
3340
+ }
3341
+ : { connectOrCreate: props.order.alpacaAccount.alerts.map((item) => ({
3342
+ where: {
3343
+ id: item.id !== undefined ? item.id : undefined,
3344
+ },
3345
+ create: {
3346
+ message: item.message !== undefined ? item.message : undefined,
3347
+ type: item.type !== undefined ? item.type : undefined,
3348
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
3349
+ },
3350
+ }))
3351
+ } : undefined,
1513
3352
  },
1514
3353
  }
1515
3354
  } : undefined,
@@ -1581,6 +3420,77 @@ export const Action = {
1581
3420
  exDividendDate: props.order.asset.exDividendDate !== undefined ? props.order.asset.exDividendDate : undefined,
1582
3421
  askPrice: props.order.asset.askPrice !== undefined ? props.order.asset.askPrice : undefined,
1583
3422
  bidPrice: props.order.asset.bidPrice !== undefined ? props.order.asset.bidPrice : undefined,
3423
+ trades: props.order.asset.trades ?
3424
+ 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) ? {
3425
+ connect: props.order.asset.trades.map((item) => ({
3426
+ id: item.id
3427
+ }))
3428
+ }
3429
+ : { connectOrCreate: props.order.asset.trades.map((item) => ({
3430
+ where: {
3431
+ id: item.id !== undefined ? item.id : undefined,
3432
+ },
3433
+ create: {
3434
+ qty: item.qty !== undefined ? item.qty : undefined,
3435
+ price: item.price !== undefined ? item.price : undefined,
3436
+ total: item.total !== undefined ? item.total : undefined,
3437
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3438
+ signal: item.signal !== undefined ? item.signal : undefined,
3439
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3440
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3441
+ summary: item.summary !== undefined ? item.summary : undefined,
3442
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3443
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3444
+ status: item.status !== undefined ? item.status : undefined,
3445
+ },
3446
+ }))
3447
+ } : undefined,
3448
+ positions: props.order.asset.positions ?
3449
+ 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) ? {
3450
+ connect: props.order.asset.positions.map((item) => ({
3451
+ id: item.id
3452
+ }))
3453
+ }
3454
+ : { connectOrCreate: props.order.asset.positions.map((item) => ({
3455
+ where: {
3456
+ id: item.id !== undefined ? item.id : undefined,
3457
+ },
3458
+ create: {
3459
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3460
+ qty: item.qty !== undefined ? item.qty : undefined,
3461
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3462
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3463
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3464
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3465
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3466
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3467
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3468
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3469
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3470
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3471
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3472
+ },
3473
+ }))
3474
+ } : undefined,
3475
+ newsMentions: props.order.asset.newsMentions ?
3476
+ 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) ? {
3477
+ connect: props.order.asset.newsMentions.map((item) => ({
3478
+ id: item.id
3479
+ }))
3480
+ }
3481
+ : { connectOrCreate: props.order.asset.newsMentions.map((item) => ({
3482
+ where: {
3483
+ id: item.id !== undefined ? item.id : undefined,
3484
+ url: item.url !== undefined ? item.url : undefined,
3485
+ },
3486
+ create: {
3487
+ url: item.url !== undefined ? item.url : undefined,
3488
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3489
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3490
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3491
+ },
3492
+ }))
3493
+ } : undefined,
1584
3494
  },
1585
3495
  }
1586
3496
  } : undefined,
@@ -1729,6 +3639,266 @@ export const Action = {
1729
3639
  volumeThreshold: prop.trade.alpacaAccount.volumeThreshold !== undefined ? {
1730
3640
  set: prop.trade.alpacaAccount.volumeThreshold
1731
3641
  } : undefined,
3642
+ user: prop.trade.alpacaAccount.user ? {
3643
+ upsert: {
3644
+ where: {
3645
+ id: prop.trade.alpacaAccount.user.id !== undefined ? {
3646
+ equals: prop.trade.alpacaAccount.user.id
3647
+ } : undefined,
3648
+ name: prop.trade.alpacaAccount.user.name !== undefined ? {
3649
+ equals: prop.trade.alpacaAccount.user.name
3650
+ } : undefined,
3651
+ email: prop.trade.alpacaAccount.user.email !== undefined ? {
3652
+ equals: prop.trade.alpacaAccount.user.email
3653
+ } : undefined,
3654
+ },
3655
+ update: {
3656
+ id: prop.trade.alpacaAccount.user.id !== undefined ? {
3657
+ set: prop.trade.alpacaAccount.user.id
3658
+ } : undefined,
3659
+ name: prop.trade.alpacaAccount.user.name !== undefined ? {
3660
+ set: prop.trade.alpacaAccount.user.name
3661
+ } : undefined,
3662
+ email: prop.trade.alpacaAccount.user.email !== undefined ? {
3663
+ set: prop.trade.alpacaAccount.user.email
3664
+ } : undefined,
3665
+ emailVerified: prop.trade.alpacaAccount.user.emailVerified !== undefined ? {
3666
+ set: prop.trade.alpacaAccount.user.emailVerified
3667
+ } : undefined,
3668
+ image: prop.trade.alpacaAccount.user.image !== undefined ? {
3669
+ set: prop.trade.alpacaAccount.user.image
3670
+ } : undefined,
3671
+ role: prop.trade.alpacaAccount.user.role !== undefined ? {
3672
+ set: prop.trade.alpacaAccount.user.role
3673
+ } : undefined,
3674
+ bio: prop.trade.alpacaAccount.user.bio !== undefined ? {
3675
+ set: prop.trade.alpacaAccount.user.bio
3676
+ } : undefined,
3677
+ jobTitle: prop.trade.alpacaAccount.user.jobTitle !== undefined ? {
3678
+ set: prop.trade.alpacaAccount.user.jobTitle
3679
+ } : undefined,
3680
+ currentAccount: prop.trade.alpacaAccount.user.currentAccount !== undefined ? {
3681
+ set: prop.trade.alpacaAccount.user.currentAccount
3682
+ } : undefined,
3683
+ plan: prop.trade.alpacaAccount.user.plan !== undefined ? {
3684
+ set: prop.trade.alpacaAccount.user.plan
3685
+ } : undefined,
3686
+ openaiAPIKey: prop.trade.alpacaAccount.user.openaiAPIKey !== undefined ? {
3687
+ set: prop.trade.alpacaAccount.user.openaiAPIKey
3688
+ } : undefined,
3689
+ openaiModel: prop.trade.alpacaAccount.user.openaiModel !== undefined ? {
3690
+ set: prop.trade.alpacaAccount.user.openaiModel
3691
+ } : undefined,
3692
+ },
3693
+ create: {
3694
+ name: prop.trade.alpacaAccount.user.name !== undefined ? prop.trade.alpacaAccount.user.name : undefined,
3695
+ email: prop.trade.alpacaAccount.user.email !== undefined ? prop.trade.alpacaAccount.user.email : undefined,
3696
+ emailVerified: prop.trade.alpacaAccount.user.emailVerified !== undefined ? prop.trade.alpacaAccount.user.emailVerified : undefined,
3697
+ image: prop.trade.alpacaAccount.user.image !== undefined ? prop.trade.alpacaAccount.user.image : undefined,
3698
+ role: prop.trade.alpacaAccount.user.role !== undefined ? prop.trade.alpacaAccount.user.role : undefined,
3699
+ bio: prop.trade.alpacaAccount.user.bio !== undefined ? prop.trade.alpacaAccount.user.bio : undefined,
3700
+ jobTitle: prop.trade.alpacaAccount.user.jobTitle !== undefined ? prop.trade.alpacaAccount.user.jobTitle : undefined,
3701
+ currentAccount: prop.trade.alpacaAccount.user.currentAccount !== undefined ? prop.trade.alpacaAccount.user.currentAccount : undefined,
3702
+ plan: prop.trade.alpacaAccount.user.plan !== undefined ? prop.trade.alpacaAccount.user.plan : undefined,
3703
+ openaiAPIKey: prop.trade.alpacaAccount.user.openaiAPIKey !== undefined ? prop.trade.alpacaAccount.user.openaiAPIKey : undefined,
3704
+ openaiModel: prop.trade.alpacaAccount.user.openaiModel !== undefined ? prop.trade.alpacaAccount.user.openaiModel : undefined,
3705
+ },
3706
+ }
3707
+ } : undefined,
3708
+ orders: prop.trade.alpacaAccount.orders ? {
3709
+ upsert: prop.trade.alpacaAccount.orders.map((item) => ({
3710
+ where: {
3711
+ id: item.id !== undefined ? item.id : undefined,
3712
+ },
3713
+ update: {
3714
+ id: item.id !== undefined ? {
3715
+ set: item.id
3716
+ } : undefined,
3717
+ clientOrderId: item.clientOrderId !== undefined ? {
3718
+ set: item.clientOrderId
3719
+ } : undefined,
3720
+ qty: item.qty !== undefined ? {
3721
+ set: item.qty
3722
+ } : undefined,
3723
+ notional: item.notional !== undefined ? {
3724
+ set: item.notional
3725
+ } : undefined,
3726
+ side: item.side !== undefined ? {
3727
+ set: item.side
3728
+ } : undefined,
3729
+ type: item.type !== undefined ? {
3730
+ set: item.type
3731
+ } : undefined,
3732
+ orderClass: item.orderClass !== undefined ? {
3733
+ set: item.orderClass
3734
+ } : undefined,
3735
+ timeInForce: item.timeInForce !== undefined ? {
3736
+ set: item.timeInForce
3737
+ } : undefined,
3738
+ limitPrice: item.limitPrice !== undefined ? {
3739
+ set: item.limitPrice
3740
+ } : undefined,
3741
+ stopPrice: item.stopPrice !== undefined ? {
3742
+ set: item.stopPrice
3743
+ } : undefined,
3744
+ trailPrice: item.trailPrice !== undefined ? {
3745
+ set: item.trailPrice
3746
+ } : undefined,
3747
+ trailPercent: item.trailPercent !== undefined ? {
3748
+ set: item.trailPercent
3749
+ } : undefined,
3750
+ extendedHours: item.extendedHours !== undefined ? {
3751
+ set: item.extendedHours
3752
+ } : undefined,
3753
+ status: item.status !== undefined ? {
3754
+ set: item.status
3755
+ } : undefined,
3756
+ submittedAt: item.submittedAt !== undefined ? {
3757
+ set: item.submittedAt
3758
+ } : undefined,
3759
+ filledAt: item.filledAt !== undefined ? {
3760
+ set: item.filledAt
3761
+ } : undefined,
3762
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
3763
+ set: item.filledAvgPrice
3764
+ } : undefined,
3765
+ fee: item.fee !== undefined ? {
3766
+ set: item.fee
3767
+ } : undefined,
3768
+ strikePrice: item.strikePrice !== undefined ? {
3769
+ set: item.strikePrice
3770
+ } : undefined,
3771
+ expirationDate: item.expirationDate !== undefined ? {
3772
+ set: item.expirationDate
3773
+ } : undefined,
3774
+ optionType: item.optionType !== undefined ? {
3775
+ set: item.optionType
3776
+ } : undefined,
3777
+ stopLossId: item.stopLossId !== undefined ? {
3778
+ set: item.stopLossId
3779
+ } : undefined,
3780
+ takeProfitId: item.takeProfitId !== undefined ? {
3781
+ set: item.takeProfitId
3782
+ } : undefined,
3783
+ },
3784
+ create: {
3785
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
3786
+ qty: item.qty !== undefined ? item.qty : undefined,
3787
+ notional: item.notional !== undefined ? item.notional : undefined,
3788
+ side: item.side !== undefined ? item.side : undefined,
3789
+ type: item.type !== undefined ? item.type : undefined,
3790
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
3791
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
3792
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
3793
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
3794
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
3795
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
3796
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
3797
+ status: item.status !== undefined ? item.status : undefined,
3798
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
3799
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
3800
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
3801
+ fee: item.fee !== undefined ? item.fee : undefined,
3802
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
3803
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
3804
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3805
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
3806
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
3807
+ },
3808
+ }))
3809
+ } : undefined,
3810
+ positions: prop.trade.alpacaAccount.positions ? {
3811
+ upsert: prop.trade.alpacaAccount.positions.map((item) => ({
3812
+ where: {
3813
+ id: item.id !== undefined ? item.id : undefined,
3814
+ },
3815
+ update: {
3816
+ id: item.id !== undefined ? {
3817
+ set: item.id
3818
+ } : undefined,
3819
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
3820
+ set: item.averageEntryPrice
3821
+ } : undefined,
3822
+ qty: item.qty !== undefined ? {
3823
+ set: item.qty
3824
+ } : undefined,
3825
+ qtyAvailable: item.qtyAvailable !== undefined ? {
3826
+ set: item.qtyAvailable
3827
+ } : undefined,
3828
+ marketValue: item.marketValue !== undefined ? {
3829
+ set: item.marketValue
3830
+ } : undefined,
3831
+ costBasis: item.costBasis !== undefined ? {
3832
+ set: item.costBasis
3833
+ } : undefined,
3834
+ unrealizedPL: item.unrealizedPL !== undefined ? {
3835
+ set: item.unrealizedPL
3836
+ } : undefined,
3837
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
3838
+ set: item.unrealizedPLPC
3839
+ } : undefined,
3840
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
3841
+ set: item.unrealisedIntradayPL
3842
+ } : undefined,
3843
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
3844
+ set: item.unrealisedIntradayPLPC
3845
+ } : undefined,
3846
+ currentPrice: item.currentPrice !== undefined ? {
3847
+ set: item.currentPrice
3848
+ } : undefined,
3849
+ lastTradePrice: item.lastTradePrice !== undefined ? {
3850
+ set: item.lastTradePrice
3851
+ } : undefined,
3852
+ changeToday: item.changeToday !== undefined ? {
3853
+ set: item.changeToday
3854
+ } : undefined,
3855
+ assetMarginable: item.assetMarginable !== undefined ? {
3856
+ set: item.assetMarginable
3857
+ } : undefined,
3858
+ },
3859
+ create: {
3860
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3861
+ qty: item.qty !== undefined ? item.qty : undefined,
3862
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3863
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3864
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3865
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3866
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3867
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3868
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3869
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3870
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3871
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3872
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3873
+ },
3874
+ }))
3875
+ } : undefined,
3876
+ alerts: prop.trade.alpacaAccount.alerts ? {
3877
+ upsert: prop.trade.alpacaAccount.alerts.map((item) => ({
3878
+ where: {
3879
+ id: item.id !== undefined ? item.id : undefined,
3880
+ },
3881
+ update: {
3882
+ id: item.id !== undefined ? {
3883
+ set: item.id
3884
+ } : undefined,
3885
+ message: item.message !== undefined ? {
3886
+ set: item.message
3887
+ } : undefined,
3888
+ type: item.type !== undefined ? {
3889
+ set: item.type
3890
+ } : undefined,
3891
+ isRead: item.isRead !== undefined ? {
3892
+ set: item.isRead
3893
+ } : undefined,
3894
+ },
3895
+ create: {
3896
+ message: item.message !== undefined ? item.message : undefined,
3897
+ type: item.type !== undefined ? item.type : undefined,
3898
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
3899
+ },
3900
+ }))
3901
+ } : undefined,
1732
3902
  },
1733
3903
  create: {
1734
3904
  type: prop.trade.alpacaAccount.type !== undefined ? prop.trade.alpacaAccount.type : undefined,
@@ -1740,6 +3910,115 @@ export const Action = {
1740
3910
  maxOrderSize: prop.trade.alpacaAccount.maxOrderSize !== undefined ? prop.trade.alpacaAccount.maxOrderSize : undefined,
1741
3911
  minPercentageChange: prop.trade.alpacaAccount.minPercentageChange !== undefined ? prop.trade.alpacaAccount.minPercentageChange : undefined,
1742
3912
  volumeThreshold: prop.trade.alpacaAccount.volumeThreshold !== undefined ? prop.trade.alpacaAccount.volumeThreshold : undefined,
3913
+ user: prop.trade.alpacaAccount.user ?
3914
+ typeof prop.trade.alpacaAccount.user === 'object' && Object.keys(prop.trade.alpacaAccount.user).length === 1 && Object.keys(prop.trade.alpacaAccount.user)[0] === 'id'
3915
+ ? { connect: {
3916
+ id: prop.trade.alpacaAccount.user.id
3917
+ }
3918
+ }
3919
+ : { connectOrCreate: {
3920
+ where: {
3921
+ id: prop.trade.alpacaAccount.user.id !== undefined ? prop.trade.alpacaAccount.user.id : undefined,
3922
+ email: prop.trade.alpacaAccount.user.email !== undefined ? prop.trade.alpacaAccount.user.email : undefined,
3923
+ name: prop.trade.alpacaAccount.user.name !== undefined ? {
3924
+ equals: prop.trade.alpacaAccount.user.name
3925
+ } : undefined,
3926
+ },
3927
+ create: {
3928
+ name: prop.trade.alpacaAccount.user.name !== undefined ? prop.trade.alpacaAccount.user.name : undefined,
3929
+ email: prop.trade.alpacaAccount.user.email !== undefined ? prop.trade.alpacaAccount.user.email : undefined,
3930
+ emailVerified: prop.trade.alpacaAccount.user.emailVerified !== undefined ? prop.trade.alpacaAccount.user.emailVerified : undefined,
3931
+ image: prop.trade.alpacaAccount.user.image !== undefined ? prop.trade.alpacaAccount.user.image : undefined,
3932
+ role: prop.trade.alpacaAccount.user.role !== undefined ? prop.trade.alpacaAccount.user.role : undefined,
3933
+ bio: prop.trade.alpacaAccount.user.bio !== undefined ? prop.trade.alpacaAccount.user.bio : undefined,
3934
+ jobTitle: prop.trade.alpacaAccount.user.jobTitle !== undefined ? prop.trade.alpacaAccount.user.jobTitle : undefined,
3935
+ currentAccount: prop.trade.alpacaAccount.user.currentAccount !== undefined ? prop.trade.alpacaAccount.user.currentAccount : undefined,
3936
+ plan: prop.trade.alpacaAccount.user.plan !== undefined ? prop.trade.alpacaAccount.user.plan : undefined,
3937
+ openaiAPIKey: prop.trade.alpacaAccount.user.openaiAPIKey !== undefined ? prop.trade.alpacaAccount.user.openaiAPIKey : undefined,
3938
+ openaiModel: prop.trade.alpacaAccount.user.openaiModel !== undefined ? prop.trade.alpacaAccount.user.openaiModel : undefined,
3939
+ },
3940
+ }
3941
+ } : undefined,
3942
+ orders: prop.trade.alpacaAccount.orders ?
3943
+ Array.isArray(prop.trade.alpacaAccount.orders) && prop.trade.alpacaAccount.orders.length > 0 && prop.trade.alpacaAccount.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3944
+ connect: prop.trade.alpacaAccount.orders.map((item) => ({
3945
+ id: item.id
3946
+ }))
3947
+ }
3948
+ : { connectOrCreate: prop.trade.alpacaAccount.orders.map((item) => ({
3949
+ where: {
3950
+ id: item.id !== undefined ? item.id : undefined,
3951
+ },
3952
+ create: {
3953
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
3954
+ qty: item.qty !== undefined ? item.qty : undefined,
3955
+ notional: item.notional !== undefined ? item.notional : undefined,
3956
+ side: item.side !== undefined ? item.side : undefined,
3957
+ type: item.type !== undefined ? item.type : undefined,
3958
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
3959
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
3960
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
3961
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
3962
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
3963
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
3964
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
3965
+ status: item.status !== undefined ? item.status : undefined,
3966
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
3967
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
3968
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
3969
+ fee: item.fee !== undefined ? item.fee : undefined,
3970
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
3971
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
3972
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3973
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
3974
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
3975
+ },
3976
+ }))
3977
+ } : undefined,
3978
+ positions: prop.trade.alpacaAccount.positions ?
3979
+ Array.isArray(prop.trade.alpacaAccount.positions) && prop.trade.alpacaAccount.positions.length > 0 && prop.trade.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3980
+ connect: prop.trade.alpacaAccount.positions.map((item) => ({
3981
+ id: item.id
3982
+ }))
3983
+ }
3984
+ : { connectOrCreate: prop.trade.alpacaAccount.positions.map((item) => ({
3985
+ where: {
3986
+ id: item.id !== undefined ? item.id : undefined,
3987
+ },
3988
+ create: {
3989
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3990
+ qty: item.qty !== undefined ? item.qty : undefined,
3991
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3992
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3993
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3994
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3995
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3996
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3997
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3998
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3999
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
4000
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
4001
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
4002
+ },
4003
+ }))
4004
+ } : undefined,
4005
+ alerts: prop.trade.alpacaAccount.alerts ?
4006
+ Array.isArray(prop.trade.alpacaAccount.alerts) && prop.trade.alpacaAccount.alerts.length > 0 && prop.trade.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4007
+ connect: prop.trade.alpacaAccount.alerts.map((item) => ({
4008
+ id: item.id
4009
+ }))
4010
+ }
4011
+ : { connectOrCreate: prop.trade.alpacaAccount.alerts.map((item) => ({
4012
+ where: {
4013
+ id: item.id !== undefined ? item.id : undefined,
4014
+ },
4015
+ create: {
4016
+ message: item.message !== undefined ? item.message : undefined,
4017
+ type: item.type !== undefined ? item.type : undefined,
4018
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
4019
+ },
4020
+ }))
4021
+ } : undefined,
1743
4022
  },
1744
4023
  }
1745
4024
  } : undefined,
@@ -1925,6 +4204,205 @@ export const Action = {
1925
4204
  bidPrice: prop.trade.asset.bidPrice !== undefined ? {
1926
4205
  set: prop.trade.asset.bidPrice
1927
4206
  } : undefined,
4207
+ orders: prop.trade.asset.orders ? {
4208
+ upsert: prop.trade.asset.orders.map((item) => ({
4209
+ where: {
4210
+ id: item.id !== undefined ? item.id : undefined,
4211
+ },
4212
+ update: {
4213
+ id: item.id !== undefined ? {
4214
+ set: item.id
4215
+ } : undefined,
4216
+ clientOrderId: item.clientOrderId !== undefined ? {
4217
+ set: item.clientOrderId
4218
+ } : undefined,
4219
+ qty: item.qty !== undefined ? {
4220
+ set: item.qty
4221
+ } : undefined,
4222
+ notional: item.notional !== undefined ? {
4223
+ set: item.notional
4224
+ } : undefined,
4225
+ side: item.side !== undefined ? {
4226
+ set: item.side
4227
+ } : undefined,
4228
+ type: item.type !== undefined ? {
4229
+ set: item.type
4230
+ } : undefined,
4231
+ orderClass: item.orderClass !== undefined ? {
4232
+ set: item.orderClass
4233
+ } : undefined,
4234
+ timeInForce: item.timeInForce !== undefined ? {
4235
+ set: item.timeInForce
4236
+ } : undefined,
4237
+ limitPrice: item.limitPrice !== undefined ? {
4238
+ set: item.limitPrice
4239
+ } : undefined,
4240
+ stopPrice: item.stopPrice !== undefined ? {
4241
+ set: item.stopPrice
4242
+ } : undefined,
4243
+ trailPrice: item.trailPrice !== undefined ? {
4244
+ set: item.trailPrice
4245
+ } : undefined,
4246
+ trailPercent: item.trailPercent !== undefined ? {
4247
+ set: item.trailPercent
4248
+ } : undefined,
4249
+ extendedHours: item.extendedHours !== undefined ? {
4250
+ set: item.extendedHours
4251
+ } : undefined,
4252
+ status: item.status !== undefined ? {
4253
+ set: item.status
4254
+ } : undefined,
4255
+ submittedAt: item.submittedAt !== undefined ? {
4256
+ set: item.submittedAt
4257
+ } : undefined,
4258
+ filledAt: item.filledAt !== undefined ? {
4259
+ set: item.filledAt
4260
+ } : undefined,
4261
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
4262
+ set: item.filledAvgPrice
4263
+ } : undefined,
4264
+ fee: item.fee !== undefined ? {
4265
+ set: item.fee
4266
+ } : undefined,
4267
+ strikePrice: item.strikePrice !== undefined ? {
4268
+ set: item.strikePrice
4269
+ } : undefined,
4270
+ expirationDate: item.expirationDate !== undefined ? {
4271
+ set: item.expirationDate
4272
+ } : undefined,
4273
+ optionType: item.optionType !== undefined ? {
4274
+ set: item.optionType
4275
+ } : undefined,
4276
+ stopLossId: item.stopLossId !== undefined ? {
4277
+ set: item.stopLossId
4278
+ } : undefined,
4279
+ takeProfitId: item.takeProfitId !== undefined ? {
4280
+ set: item.takeProfitId
4281
+ } : undefined,
4282
+ },
4283
+ create: {
4284
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4285
+ qty: item.qty !== undefined ? item.qty : undefined,
4286
+ notional: item.notional !== undefined ? item.notional : undefined,
4287
+ side: item.side !== undefined ? item.side : undefined,
4288
+ type: item.type !== undefined ? item.type : undefined,
4289
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4290
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4291
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4292
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
4293
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
4294
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
4295
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
4296
+ status: item.status !== undefined ? item.status : undefined,
4297
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
4298
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
4299
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
4300
+ fee: item.fee !== undefined ? item.fee : undefined,
4301
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
4302
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
4303
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4304
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
4305
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
4306
+ },
4307
+ }))
4308
+ } : undefined,
4309
+ positions: prop.trade.asset.positions ? {
4310
+ upsert: prop.trade.asset.positions.map((item) => ({
4311
+ where: {
4312
+ id: item.id !== undefined ? item.id : undefined,
4313
+ },
4314
+ update: {
4315
+ id: item.id !== undefined ? {
4316
+ set: item.id
4317
+ } : undefined,
4318
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
4319
+ set: item.averageEntryPrice
4320
+ } : undefined,
4321
+ qty: item.qty !== undefined ? {
4322
+ set: item.qty
4323
+ } : undefined,
4324
+ qtyAvailable: item.qtyAvailable !== undefined ? {
4325
+ set: item.qtyAvailable
4326
+ } : undefined,
4327
+ marketValue: item.marketValue !== undefined ? {
4328
+ set: item.marketValue
4329
+ } : undefined,
4330
+ costBasis: item.costBasis !== undefined ? {
4331
+ set: item.costBasis
4332
+ } : undefined,
4333
+ unrealizedPL: item.unrealizedPL !== undefined ? {
4334
+ set: item.unrealizedPL
4335
+ } : undefined,
4336
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
4337
+ set: item.unrealizedPLPC
4338
+ } : undefined,
4339
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
4340
+ set: item.unrealisedIntradayPL
4341
+ } : undefined,
4342
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
4343
+ set: item.unrealisedIntradayPLPC
4344
+ } : undefined,
4345
+ currentPrice: item.currentPrice !== undefined ? {
4346
+ set: item.currentPrice
4347
+ } : undefined,
4348
+ lastTradePrice: item.lastTradePrice !== undefined ? {
4349
+ set: item.lastTradePrice
4350
+ } : undefined,
4351
+ changeToday: item.changeToday !== undefined ? {
4352
+ set: item.changeToday
4353
+ } : undefined,
4354
+ assetMarginable: item.assetMarginable !== undefined ? {
4355
+ set: item.assetMarginable
4356
+ } : undefined,
4357
+ },
4358
+ create: {
4359
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
4360
+ qty: item.qty !== undefined ? item.qty : undefined,
4361
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
4362
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
4363
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
4364
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
4365
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
4366
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
4367
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
4368
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
4369
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
4370
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
4371
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
4372
+ },
4373
+ }))
4374
+ } : undefined,
4375
+ newsMentions: prop.trade.asset.newsMentions ? {
4376
+ upsert: prop.trade.asset.newsMentions.map((item) => ({
4377
+ where: {
4378
+ id: item.id !== undefined ? item.id : undefined,
4379
+ url: item.url !== undefined ? item.url : undefined,
4380
+ },
4381
+ update: {
4382
+ id: item.id !== undefined ? {
4383
+ set: item.id
4384
+ } : undefined,
4385
+ url: item.url !== undefined ? {
4386
+ set: item.url
4387
+ } : undefined,
4388
+ relevancyScore: item.relevancyScore !== undefined ? {
4389
+ set: item.relevancyScore
4390
+ } : undefined,
4391
+ sentimentScore: item.sentimentScore !== undefined ? {
4392
+ set: item.sentimentScore
4393
+ } : undefined,
4394
+ sentimentLabel: item.sentimentLabel !== undefined ? {
4395
+ set: item.sentimentLabel
4396
+ } : undefined,
4397
+ },
4398
+ create: {
4399
+ url: item.url !== undefined ? item.url : undefined,
4400
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
4401
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
4402
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
4403
+ },
4404
+ }))
4405
+ } : undefined,
1928
4406
  },
1929
4407
  create: {
1930
4408
  symbol: prop.trade.asset.symbol !== undefined ? prop.trade.asset.symbol : undefined,
@@ -1982,6 +4460,88 @@ export const Action = {
1982
4460
  exDividendDate: prop.trade.asset.exDividendDate !== undefined ? prop.trade.asset.exDividendDate : undefined,
1983
4461
  askPrice: prop.trade.asset.askPrice !== undefined ? prop.trade.asset.askPrice : undefined,
1984
4462
  bidPrice: prop.trade.asset.bidPrice !== undefined ? prop.trade.asset.bidPrice : undefined,
4463
+ orders: prop.trade.asset.orders ?
4464
+ Array.isArray(prop.trade.asset.orders) && prop.trade.asset.orders.length > 0 && prop.trade.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4465
+ connect: prop.trade.asset.orders.map((item) => ({
4466
+ id: item.id
4467
+ }))
4468
+ }
4469
+ : { connectOrCreate: prop.trade.asset.orders.map((item) => ({
4470
+ where: {
4471
+ id: item.id !== undefined ? item.id : undefined,
4472
+ },
4473
+ create: {
4474
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4475
+ qty: item.qty !== undefined ? item.qty : undefined,
4476
+ notional: item.notional !== undefined ? item.notional : undefined,
4477
+ side: item.side !== undefined ? item.side : undefined,
4478
+ type: item.type !== undefined ? item.type : undefined,
4479
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4480
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4481
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4482
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
4483
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
4484
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
4485
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
4486
+ status: item.status !== undefined ? item.status : undefined,
4487
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
4488
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
4489
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
4490
+ fee: item.fee !== undefined ? item.fee : undefined,
4491
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
4492
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
4493
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4494
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
4495
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
4496
+ },
4497
+ }))
4498
+ } : undefined,
4499
+ positions: prop.trade.asset.positions ?
4500
+ Array.isArray(prop.trade.asset.positions) && prop.trade.asset.positions.length > 0 && prop.trade.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4501
+ connect: prop.trade.asset.positions.map((item) => ({
4502
+ id: item.id
4503
+ }))
4504
+ }
4505
+ : { connectOrCreate: prop.trade.asset.positions.map((item) => ({
4506
+ where: {
4507
+ id: item.id !== undefined ? item.id : undefined,
4508
+ },
4509
+ create: {
4510
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
4511
+ qty: item.qty !== undefined ? item.qty : undefined,
4512
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
4513
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
4514
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
4515
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
4516
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
4517
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
4518
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
4519
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
4520
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
4521
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
4522
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
4523
+ },
4524
+ }))
4525
+ } : undefined,
4526
+ newsMentions: prop.trade.asset.newsMentions ?
4527
+ Array.isArray(prop.trade.asset.newsMentions) && prop.trade.asset.newsMentions.length > 0 && prop.trade.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4528
+ connect: prop.trade.asset.newsMentions.map((item) => ({
4529
+ id: item.id
4530
+ }))
4531
+ }
4532
+ : { connectOrCreate: prop.trade.asset.newsMentions.map((item) => ({
4533
+ where: {
4534
+ id: item.id !== undefined ? item.id : undefined,
4535
+ url: item.url !== undefined ? item.url : undefined,
4536
+ },
4537
+ create: {
4538
+ url: item.url !== undefined ? item.url : undefined,
4539
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
4540
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
4541
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
4542
+ },
4543
+ }))
4544
+ } : undefined,
1985
4545
  },
1986
4546
  }
1987
4547
  } : undefined,
@@ -2018,6 +4578,115 @@ export const Action = {
2018
4578
  maxOrderSize: prop.trade.alpacaAccount.maxOrderSize !== undefined ? prop.trade.alpacaAccount.maxOrderSize : undefined,
2019
4579
  minPercentageChange: prop.trade.alpacaAccount.minPercentageChange !== undefined ? prop.trade.alpacaAccount.minPercentageChange : undefined,
2020
4580
  volumeThreshold: prop.trade.alpacaAccount.volumeThreshold !== undefined ? prop.trade.alpacaAccount.volumeThreshold : undefined,
4581
+ user: prop.trade.alpacaAccount.user ?
4582
+ typeof prop.trade.alpacaAccount.user === 'object' && Object.keys(prop.trade.alpacaAccount.user).length === 1 && Object.keys(prop.trade.alpacaAccount.user)[0] === 'id'
4583
+ ? { connect: {
4584
+ id: prop.trade.alpacaAccount.user.id
4585
+ }
4586
+ }
4587
+ : { connectOrCreate: {
4588
+ where: {
4589
+ id: prop.trade.alpacaAccount.user.id !== undefined ? prop.trade.alpacaAccount.user.id : undefined,
4590
+ email: prop.trade.alpacaAccount.user.email !== undefined ? prop.trade.alpacaAccount.user.email : undefined,
4591
+ name: prop.trade.alpacaAccount.user.name !== undefined ? {
4592
+ equals: prop.trade.alpacaAccount.user.name
4593
+ } : undefined,
4594
+ },
4595
+ create: {
4596
+ name: prop.trade.alpacaAccount.user.name !== undefined ? prop.trade.alpacaAccount.user.name : undefined,
4597
+ email: prop.trade.alpacaAccount.user.email !== undefined ? prop.trade.alpacaAccount.user.email : undefined,
4598
+ emailVerified: prop.trade.alpacaAccount.user.emailVerified !== undefined ? prop.trade.alpacaAccount.user.emailVerified : undefined,
4599
+ image: prop.trade.alpacaAccount.user.image !== undefined ? prop.trade.alpacaAccount.user.image : undefined,
4600
+ role: prop.trade.alpacaAccount.user.role !== undefined ? prop.trade.alpacaAccount.user.role : undefined,
4601
+ bio: prop.trade.alpacaAccount.user.bio !== undefined ? prop.trade.alpacaAccount.user.bio : undefined,
4602
+ jobTitle: prop.trade.alpacaAccount.user.jobTitle !== undefined ? prop.trade.alpacaAccount.user.jobTitle : undefined,
4603
+ currentAccount: prop.trade.alpacaAccount.user.currentAccount !== undefined ? prop.trade.alpacaAccount.user.currentAccount : undefined,
4604
+ plan: prop.trade.alpacaAccount.user.plan !== undefined ? prop.trade.alpacaAccount.user.plan : undefined,
4605
+ openaiAPIKey: prop.trade.alpacaAccount.user.openaiAPIKey !== undefined ? prop.trade.alpacaAccount.user.openaiAPIKey : undefined,
4606
+ openaiModel: prop.trade.alpacaAccount.user.openaiModel !== undefined ? prop.trade.alpacaAccount.user.openaiModel : undefined,
4607
+ },
4608
+ }
4609
+ } : undefined,
4610
+ orders: prop.trade.alpacaAccount.orders ?
4611
+ Array.isArray(prop.trade.alpacaAccount.orders) && prop.trade.alpacaAccount.orders.length > 0 && prop.trade.alpacaAccount.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4612
+ connect: prop.trade.alpacaAccount.orders.map((item) => ({
4613
+ id: item.id
4614
+ }))
4615
+ }
4616
+ : { connectOrCreate: prop.trade.alpacaAccount.orders.map((item) => ({
4617
+ where: {
4618
+ id: item.id !== undefined ? item.id : undefined,
4619
+ },
4620
+ create: {
4621
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4622
+ qty: item.qty !== undefined ? item.qty : undefined,
4623
+ notional: item.notional !== undefined ? item.notional : undefined,
4624
+ side: item.side !== undefined ? item.side : undefined,
4625
+ type: item.type !== undefined ? item.type : undefined,
4626
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4627
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4628
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4629
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
4630
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
4631
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
4632
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
4633
+ status: item.status !== undefined ? item.status : undefined,
4634
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
4635
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
4636
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
4637
+ fee: item.fee !== undefined ? item.fee : undefined,
4638
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
4639
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
4640
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4641
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
4642
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
4643
+ },
4644
+ }))
4645
+ } : undefined,
4646
+ positions: prop.trade.alpacaAccount.positions ?
4647
+ Array.isArray(prop.trade.alpacaAccount.positions) && prop.trade.alpacaAccount.positions.length > 0 && prop.trade.alpacaAccount.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4648
+ connect: prop.trade.alpacaAccount.positions.map((item) => ({
4649
+ id: item.id
4650
+ }))
4651
+ }
4652
+ : { connectOrCreate: prop.trade.alpacaAccount.positions.map((item) => ({
4653
+ where: {
4654
+ id: item.id !== undefined ? item.id : undefined,
4655
+ },
4656
+ create: {
4657
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
4658
+ qty: item.qty !== undefined ? item.qty : undefined,
4659
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
4660
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
4661
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
4662
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
4663
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
4664
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
4665
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
4666
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
4667
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
4668
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
4669
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
4670
+ },
4671
+ }))
4672
+ } : undefined,
4673
+ alerts: prop.trade.alpacaAccount.alerts ?
4674
+ Array.isArray(prop.trade.alpacaAccount.alerts) && prop.trade.alpacaAccount.alerts.length > 0 && prop.trade.alpacaAccount.alerts.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4675
+ connect: prop.trade.alpacaAccount.alerts.map((item) => ({
4676
+ id: item.id
4677
+ }))
4678
+ }
4679
+ : { connectOrCreate: prop.trade.alpacaAccount.alerts.map((item) => ({
4680
+ where: {
4681
+ id: item.id !== undefined ? item.id : undefined,
4682
+ },
4683
+ create: {
4684
+ message: item.message !== undefined ? item.message : undefined,
4685
+ type: item.type !== undefined ? item.type : undefined,
4686
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
4687
+ },
4688
+ }))
4689
+ } : undefined,
2021
4690
  },
2022
4691
  }
2023
4692
  } : undefined,
@@ -2089,6 +4758,88 @@ export const Action = {
2089
4758
  exDividendDate: prop.trade.asset.exDividendDate !== undefined ? prop.trade.asset.exDividendDate : undefined,
2090
4759
  askPrice: prop.trade.asset.askPrice !== undefined ? prop.trade.asset.askPrice : undefined,
2091
4760
  bidPrice: prop.trade.asset.bidPrice !== undefined ? prop.trade.asset.bidPrice : undefined,
4761
+ orders: prop.trade.asset.orders ?
4762
+ Array.isArray(prop.trade.asset.orders) && prop.trade.asset.orders.length > 0 && prop.trade.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4763
+ connect: prop.trade.asset.orders.map((item) => ({
4764
+ id: item.id
4765
+ }))
4766
+ }
4767
+ : { connectOrCreate: prop.trade.asset.orders.map((item) => ({
4768
+ where: {
4769
+ id: item.id !== undefined ? item.id : undefined,
4770
+ },
4771
+ create: {
4772
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4773
+ qty: item.qty !== undefined ? item.qty : undefined,
4774
+ notional: item.notional !== undefined ? item.notional : undefined,
4775
+ side: item.side !== undefined ? item.side : undefined,
4776
+ type: item.type !== undefined ? item.type : undefined,
4777
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4778
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4779
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4780
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
4781
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
4782
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
4783
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
4784
+ status: item.status !== undefined ? item.status : undefined,
4785
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
4786
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
4787
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
4788
+ fee: item.fee !== undefined ? item.fee : undefined,
4789
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
4790
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
4791
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4792
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
4793
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
4794
+ },
4795
+ }))
4796
+ } : undefined,
4797
+ positions: prop.trade.asset.positions ?
4798
+ Array.isArray(prop.trade.asset.positions) && prop.trade.asset.positions.length > 0 && prop.trade.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4799
+ connect: prop.trade.asset.positions.map((item) => ({
4800
+ id: item.id
4801
+ }))
4802
+ }
4803
+ : { connectOrCreate: prop.trade.asset.positions.map((item) => ({
4804
+ where: {
4805
+ id: item.id !== undefined ? item.id : undefined,
4806
+ },
4807
+ create: {
4808
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
4809
+ qty: item.qty !== undefined ? item.qty : undefined,
4810
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
4811
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
4812
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
4813
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
4814
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
4815
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
4816
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
4817
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
4818
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
4819
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
4820
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
4821
+ },
4822
+ }))
4823
+ } : undefined,
4824
+ newsMentions: prop.trade.asset.newsMentions ?
4825
+ Array.isArray(prop.trade.asset.newsMentions) && prop.trade.asset.newsMentions.length > 0 && prop.trade.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4826
+ connect: prop.trade.asset.newsMentions.map((item) => ({
4827
+ id: item.id
4828
+ }))
4829
+ }
4830
+ : { connectOrCreate: prop.trade.asset.newsMentions.map((item) => ({
4831
+ where: {
4832
+ id: item.id !== undefined ? item.id : undefined,
4833
+ url: item.url !== undefined ? item.url : undefined,
4834
+ },
4835
+ create: {
4836
+ url: item.url !== undefined ? item.url : undefined,
4837
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
4838
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
4839
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
4840
+ },
4841
+ }))
4842
+ } : undefined,
2092
4843
  },
2093
4844
  }
2094
4845
  } : undefined,
@@ -2258,6 +5009,222 @@ export const Action = {
2258
5009
  volumeThreshold: prop.order.alpacaAccount.volumeThreshold !== undefined ? {
2259
5010
  set: prop.order.alpacaAccount.volumeThreshold
2260
5011
  } : undefined,
5012
+ user: prop.order.alpacaAccount.user ? {
5013
+ upsert: {
5014
+ where: {
5015
+ id: prop.order.alpacaAccount.user.id !== undefined ? {
5016
+ equals: prop.order.alpacaAccount.user.id
5017
+ } : undefined,
5018
+ name: prop.order.alpacaAccount.user.name !== undefined ? {
5019
+ equals: prop.order.alpacaAccount.user.name
5020
+ } : undefined,
5021
+ email: prop.order.alpacaAccount.user.email !== undefined ? {
5022
+ equals: prop.order.alpacaAccount.user.email
5023
+ } : undefined,
5024
+ },
5025
+ update: {
5026
+ id: prop.order.alpacaAccount.user.id !== undefined ? {
5027
+ set: prop.order.alpacaAccount.user.id
5028
+ } : undefined,
5029
+ name: prop.order.alpacaAccount.user.name !== undefined ? {
5030
+ set: prop.order.alpacaAccount.user.name
5031
+ } : undefined,
5032
+ email: prop.order.alpacaAccount.user.email !== undefined ? {
5033
+ set: prop.order.alpacaAccount.user.email
5034
+ } : undefined,
5035
+ emailVerified: prop.order.alpacaAccount.user.emailVerified !== undefined ? {
5036
+ set: prop.order.alpacaAccount.user.emailVerified
5037
+ } : undefined,
5038
+ image: prop.order.alpacaAccount.user.image !== undefined ? {
5039
+ set: prop.order.alpacaAccount.user.image
5040
+ } : undefined,
5041
+ role: prop.order.alpacaAccount.user.role !== undefined ? {
5042
+ set: prop.order.alpacaAccount.user.role
5043
+ } : undefined,
5044
+ bio: prop.order.alpacaAccount.user.bio !== undefined ? {
5045
+ set: prop.order.alpacaAccount.user.bio
5046
+ } : undefined,
5047
+ jobTitle: prop.order.alpacaAccount.user.jobTitle !== undefined ? {
5048
+ set: prop.order.alpacaAccount.user.jobTitle
5049
+ } : undefined,
5050
+ currentAccount: prop.order.alpacaAccount.user.currentAccount !== undefined ? {
5051
+ set: prop.order.alpacaAccount.user.currentAccount
5052
+ } : undefined,
5053
+ plan: prop.order.alpacaAccount.user.plan !== undefined ? {
5054
+ set: prop.order.alpacaAccount.user.plan
5055
+ } : undefined,
5056
+ openaiAPIKey: prop.order.alpacaAccount.user.openaiAPIKey !== undefined ? {
5057
+ set: prop.order.alpacaAccount.user.openaiAPIKey
5058
+ } : undefined,
5059
+ openaiModel: prop.order.alpacaAccount.user.openaiModel !== undefined ? {
5060
+ set: prop.order.alpacaAccount.user.openaiModel
5061
+ } : undefined,
5062
+ },
5063
+ create: {
5064
+ name: prop.order.alpacaAccount.user.name !== undefined ? prop.order.alpacaAccount.user.name : undefined,
5065
+ email: prop.order.alpacaAccount.user.email !== undefined ? prop.order.alpacaAccount.user.email : undefined,
5066
+ emailVerified: prop.order.alpacaAccount.user.emailVerified !== undefined ? prop.order.alpacaAccount.user.emailVerified : undefined,
5067
+ image: prop.order.alpacaAccount.user.image !== undefined ? prop.order.alpacaAccount.user.image : undefined,
5068
+ role: prop.order.alpacaAccount.user.role !== undefined ? prop.order.alpacaAccount.user.role : undefined,
5069
+ bio: prop.order.alpacaAccount.user.bio !== undefined ? prop.order.alpacaAccount.user.bio : undefined,
5070
+ jobTitle: prop.order.alpacaAccount.user.jobTitle !== undefined ? prop.order.alpacaAccount.user.jobTitle : undefined,
5071
+ currentAccount: prop.order.alpacaAccount.user.currentAccount !== undefined ? prop.order.alpacaAccount.user.currentAccount : undefined,
5072
+ plan: prop.order.alpacaAccount.user.plan !== undefined ? prop.order.alpacaAccount.user.plan : undefined,
5073
+ openaiAPIKey: prop.order.alpacaAccount.user.openaiAPIKey !== undefined ? prop.order.alpacaAccount.user.openaiAPIKey : undefined,
5074
+ openaiModel: prop.order.alpacaAccount.user.openaiModel !== undefined ? prop.order.alpacaAccount.user.openaiModel : undefined,
5075
+ },
5076
+ }
5077
+ } : undefined,
5078
+ trades: prop.order.alpacaAccount.trades ? {
5079
+ upsert: prop.order.alpacaAccount.trades.map((item) => ({
5080
+ where: {
5081
+ id: item.id !== undefined ? item.id : undefined,
5082
+ },
5083
+ update: {
5084
+ id: item.id !== undefined ? {
5085
+ set: item.id
5086
+ } : undefined,
5087
+ qty: item.qty !== undefined ? {
5088
+ set: item.qty
5089
+ } : undefined,
5090
+ price: item.price !== undefined ? {
5091
+ set: item.price
5092
+ } : undefined,
5093
+ total: item.total !== undefined ? {
5094
+ set: item.total
5095
+ } : undefined,
5096
+ optionType: item.optionType !== undefined ? {
5097
+ set: item.optionType
5098
+ } : undefined,
5099
+ signal: item.signal !== undefined ? {
5100
+ set: item.signal
5101
+ } : undefined,
5102
+ strategy: item.strategy !== undefined ? {
5103
+ set: item.strategy
5104
+ } : undefined,
5105
+ analysis: item.analysis !== undefined ? {
5106
+ set: item.analysis
5107
+ } : undefined,
5108
+ summary: item.summary !== undefined ? {
5109
+ set: item.summary
5110
+ } : undefined,
5111
+ confidence: item.confidence !== undefined ? {
5112
+ set: item.confidence
5113
+ } : undefined,
5114
+ timestamp: item.timestamp !== undefined ? {
5115
+ set: item.timestamp
5116
+ } : undefined,
5117
+ status: item.status !== undefined ? {
5118
+ set: item.status
5119
+ } : undefined,
5120
+ },
5121
+ create: {
5122
+ qty: item.qty !== undefined ? item.qty : undefined,
5123
+ price: item.price !== undefined ? item.price : undefined,
5124
+ total: item.total !== undefined ? item.total : undefined,
5125
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5126
+ signal: item.signal !== undefined ? item.signal : undefined,
5127
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
5128
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
5129
+ summary: item.summary !== undefined ? item.summary : undefined,
5130
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
5131
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
5132
+ status: item.status !== undefined ? item.status : undefined,
5133
+ },
5134
+ }))
5135
+ } : undefined,
5136
+ positions: prop.order.alpacaAccount.positions ? {
5137
+ upsert: prop.order.alpacaAccount.positions.map((item) => ({
5138
+ where: {
5139
+ id: item.id !== undefined ? item.id : undefined,
5140
+ },
5141
+ update: {
5142
+ id: item.id !== undefined ? {
5143
+ set: item.id
5144
+ } : undefined,
5145
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
5146
+ set: item.averageEntryPrice
5147
+ } : undefined,
5148
+ qty: item.qty !== undefined ? {
5149
+ set: item.qty
5150
+ } : undefined,
5151
+ qtyAvailable: item.qtyAvailable !== undefined ? {
5152
+ set: item.qtyAvailable
5153
+ } : undefined,
5154
+ marketValue: item.marketValue !== undefined ? {
5155
+ set: item.marketValue
5156
+ } : undefined,
5157
+ costBasis: item.costBasis !== undefined ? {
5158
+ set: item.costBasis
5159
+ } : undefined,
5160
+ unrealizedPL: item.unrealizedPL !== undefined ? {
5161
+ set: item.unrealizedPL
5162
+ } : undefined,
5163
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
5164
+ set: item.unrealizedPLPC
5165
+ } : undefined,
5166
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
5167
+ set: item.unrealisedIntradayPL
5168
+ } : undefined,
5169
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
5170
+ set: item.unrealisedIntradayPLPC
5171
+ } : undefined,
5172
+ currentPrice: item.currentPrice !== undefined ? {
5173
+ set: item.currentPrice
5174
+ } : undefined,
5175
+ lastTradePrice: item.lastTradePrice !== undefined ? {
5176
+ set: item.lastTradePrice
5177
+ } : undefined,
5178
+ changeToday: item.changeToday !== undefined ? {
5179
+ set: item.changeToday
5180
+ } : undefined,
5181
+ assetMarginable: item.assetMarginable !== undefined ? {
5182
+ set: item.assetMarginable
5183
+ } : undefined,
5184
+ },
5185
+ create: {
5186
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5187
+ qty: item.qty !== undefined ? item.qty : undefined,
5188
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5189
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5190
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5191
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5192
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5193
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5194
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5195
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5196
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5197
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5198
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5199
+ },
5200
+ }))
5201
+ } : undefined,
5202
+ alerts: prop.order.alpacaAccount.alerts ? {
5203
+ upsert: prop.order.alpacaAccount.alerts.map((item) => ({
5204
+ where: {
5205
+ id: item.id !== undefined ? item.id : undefined,
5206
+ },
5207
+ update: {
5208
+ id: item.id !== undefined ? {
5209
+ set: item.id
5210
+ } : undefined,
5211
+ message: item.message !== undefined ? {
5212
+ set: item.message
5213
+ } : undefined,
5214
+ type: item.type !== undefined ? {
5215
+ set: item.type
5216
+ } : undefined,
5217
+ isRead: item.isRead !== undefined ? {
5218
+ set: item.isRead
5219
+ } : undefined,
5220
+ },
5221
+ create: {
5222
+ message: item.message !== undefined ? item.message : undefined,
5223
+ type: item.type !== undefined ? item.type : undefined,
5224
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
5225
+ },
5226
+ }))
5227
+ } : undefined,
2261
5228
  },
2262
5229
  create: {
2263
5230
  type: prop.order.alpacaAccount.type !== undefined ? prop.order.alpacaAccount.type : undefined,
@@ -2269,6 +5236,104 @@ export const Action = {
2269
5236
  maxOrderSize: prop.order.alpacaAccount.maxOrderSize !== undefined ? prop.order.alpacaAccount.maxOrderSize : undefined,
2270
5237
  minPercentageChange: prop.order.alpacaAccount.minPercentageChange !== undefined ? prop.order.alpacaAccount.minPercentageChange : undefined,
2271
5238
  volumeThreshold: prop.order.alpacaAccount.volumeThreshold !== undefined ? prop.order.alpacaAccount.volumeThreshold : undefined,
5239
+ user: prop.order.alpacaAccount.user ?
5240
+ typeof prop.order.alpacaAccount.user === 'object' && Object.keys(prop.order.alpacaAccount.user).length === 1 && Object.keys(prop.order.alpacaAccount.user)[0] === 'id'
5241
+ ? { connect: {
5242
+ id: prop.order.alpacaAccount.user.id
5243
+ }
5244
+ }
5245
+ : { connectOrCreate: {
5246
+ where: {
5247
+ id: prop.order.alpacaAccount.user.id !== undefined ? prop.order.alpacaAccount.user.id : undefined,
5248
+ email: prop.order.alpacaAccount.user.email !== undefined ? prop.order.alpacaAccount.user.email : undefined,
5249
+ name: prop.order.alpacaAccount.user.name !== undefined ? {
5250
+ equals: prop.order.alpacaAccount.user.name
5251
+ } : undefined,
5252
+ },
5253
+ create: {
5254
+ name: prop.order.alpacaAccount.user.name !== undefined ? prop.order.alpacaAccount.user.name : undefined,
5255
+ email: prop.order.alpacaAccount.user.email !== undefined ? prop.order.alpacaAccount.user.email : undefined,
5256
+ emailVerified: prop.order.alpacaAccount.user.emailVerified !== undefined ? prop.order.alpacaAccount.user.emailVerified : undefined,
5257
+ image: prop.order.alpacaAccount.user.image !== undefined ? prop.order.alpacaAccount.user.image : undefined,
5258
+ role: prop.order.alpacaAccount.user.role !== undefined ? prop.order.alpacaAccount.user.role : undefined,
5259
+ bio: prop.order.alpacaAccount.user.bio !== undefined ? prop.order.alpacaAccount.user.bio : undefined,
5260
+ jobTitle: prop.order.alpacaAccount.user.jobTitle !== undefined ? prop.order.alpacaAccount.user.jobTitle : undefined,
5261
+ currentAccount: prop.order.alpacaAccount.user.currentAccount !== undefined ? prop.order.alpacaAccount.user.currentAccount : undefined,
5262
+ plan: prop.order.alpacaAccount.user.plan !== undefined ? prop.order.alpacaAccount.user.plan : undefined,
5263
+ openaiAPIKey: prop.order.alpacaAccount.user.openaiAPIKey !== undefined ? prop.order.alpacaAccount.user.openaiAPIKey : undefined,
5264
+ openaiModel: prop.order.alpacaAccount.user.openaiModel !== undefined ? prop.order.alpacaAccount.user.openaiModel : undefined,
5265
+ },
5266
+ }
5267
+ } : undefined,
5268
+ trades: prop.order.alpacaAccount.trades ?
5269
+ 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) ? {
5270
+ connect: prop.order.alpacaAccount.trades.map((item) => ({
5271
+ id: item.id
5272
+ }))
5273
+ }
5274
+ : { connectOrCreate: prop.order.alpacaAccount.trades.map((item) => ({
5275
+ where: {
5276
+ id: item.id !== undefined ? item.id : undefined,
5277
+ },
5278
+ create: {
5279
+ qty: item.qty !== undefined ? item.qty : undefined,
5280
+ price: item.price !== undefined ? item.price : undefined,
5281
+ total: item.total !== undefined ? item.total : undefined,
5282
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5283
+ signal: item.signal !== undefined ? item.signal : undefined,
5284
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
5285
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
5286
+ summary: item.summary !== undefined ? item.summary : undefined,
5287
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
5288
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
5289
+ status: item.status !== undefined ? item.status : undefined,
5290
+ },
5291
+ }))
5292
+ } : undefined,
5293
+ positions: prop.order.alpacaAccount.positions ?
5294
+ 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) ? {
5295
+ connect: prop.order.alpacaAccount.positions.map((item) => ({
5296
+ id: item.id
5297
+ }))
5298
+ }
5299
+ : { connectOrCreate: prop.order.alpacaAccount.positions.map((item) => ({
5300
+ where: {
5301
+ id: item.id !== undefined ? item.id : undefined,
5302
+ },
5303
+ create: {
5304
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5305
+ qty: item.qty !== undefined ? item.qty : undefined,
5306
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5307
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5308
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5309
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5310
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5311
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5312
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5313
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5314
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5315
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5316
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5317
+ },
5318
+ }))
5319
+ } : undefined,
5320
+ alerts: prop.order.alpacaAccount.alerts ?
5321
+ 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) ? {
5322
+ connect: prop.order.alpacaAccount.alerts.map((item) => ({
5323
+ id: item.id
5324
+ }))
5325
+ }
5326
+ : { connectOrCreate: prop.order.alpacaAccount.alerts.map((item) => ({
5327
+ where: {
5328
+ id: item.id !== undefined ? item.id : undefined,
5329
+ },
5330
+ create: {
5331
+ message: item.message !== undefined ? item.message : undefined,
5332
+ type: item.type !== undefined ? item.type : undefined,
5333
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
5334
+ },
5335
+ }))
5336
+ } : undefined,
2272
5337
  },
2273
5338
  }
2274
5339
  } : undefined,
@@ -2454,6 +5519,161 @@ export const Action = {
2454
5519
  bidPrice: prop.order.asset.bidPrice !== undefined ? {
2455
5520
  set: prop.order.asset.bidPrice
2456
5521
  } : undefined,
5522
+ trades: prop.order.asset.trades ? {
5523
+ upsert: prop.order.asset.trades.map((item) => ({
5524
+ where: {
5525
+ id: item.id !== undefined ? item.id : undefined,
5526
+ },
5527
+ update: {
5528
+ id: item.id !== undefined ? {
5529
+ set: item.id
5530
+ } : undefined,
5531
+ qty: item.qty !== undefined ? {
5532
+ set: item.qty
5533
+ } : undefined,
5534
+ price: item.price !== undefined ? {
5535
+ set: item.price
5536
+ } : undefined,
5537
+ total: item.total !== undefined ? {
5538
+ set: item.total
5539
+ } : undefined,
5540
+ optionType: item.optionType !== undefined ? {
5541
+ set: item.optionType
5542
+ } : undefined,
5543
+ signal: item.signal !== undefined ? {
5544
+ set: item.signal
5545
+ } : undefined,
5546
+ strategy: item.strategy !== undefined ? {
5547
+ set: item.strategy
5548
+ } : undefined,
5549
+ analysis: item.analysis !== undefined ? {
5550
+ set: item.analysis
5551
+ } : undefined,
5552
+ summary: item.summary !== undefined ? {
5553
+ set: item.summary
5554
+ } : undefined,
5555
+ confidence: item.confidence !== undefined ? {
5556
+ set: item.confidence
5557
+ } : undefined,
5558
+ timestamp: item.timestamp !== undefined ? {
5559
+ set: item.timestamp
5560
+ } : undefined,
5561
+ status: item.status !== undefined ? {
5562
+ set: item.status
5563
+ } : undefined,
5564
+ },
5565
+ create: {
5566
+ qty: item.qty !== undefined ? item.qty : undefined,
5567
+ price: item.price !== undefined ? item.price : undefined,
5568
+ total: item.total !== undefined ? item.total : undefined,
5569
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5570
+ signal: item.signal !== undefined ? item.signal : undefined,
5571
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
5572
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
5573
+ summary: item.summary !== undefined ? item.summary : undefined,
5574
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
5575
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
5576
+ status: item.status !== undefined ? item.status : undefined,
5577
+ },
5578
+ }))
5579
+ } : undefined,
5580
+ positions: prop.order.asset.positions ? {
5581
+ upsert: prop.order.asset.positions.map((item) => ({
5582
+ where: {
5583
+ id: item.id !== undefined ? item.id : undefined,
5584
+ },
5585
+ update: {
5586
+ id: item.id !== undefined ? {
5587
+ set: item.id
5588
+ } : undefined,
5589
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
5590
+ set: item.averageEntryPrice
5591
+ } : undefined,
5592
+ qty: item.qty !== undefined ? {
5593
+ set: item.qty
5594
+ } : undefined,
5595
+ qtyAvailable: item.qtyAvailable !== undefined ? {
5596
+ set: item.qtyAvailable
5597
+ } : undefined,
5598
+ marketValue: item.marketValue !== undefined ? {
5599
+ set: item.marketValue
5600
+ } : undefined,
5601
+ costBasis: item.costBasis !== undefined ? {
5602
+ set: item.costBasis
5603
+ } : undefined,
5604
+ unrealizedPL: item.unrealizedPL !== undefined ? {
5605
+ set: item.unrealizedPL
5606
+ } : undefined,
5607
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
5608
+ set: item.unrealizedPLPC
5609
+ } : undefined,
5610
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
5611
+ set: item.unrealisedIntradayPL
5612
+ } : undefined,
5613
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
5614
+ set: item.unrealisedIntradayPLPC
5615
+ } : undefined,
5616
+ currentPrice: item.currentPrice !== undefined ? {
5617
+ set: item.currentPrice
5618
+ } : undefined,
5619
+ lastTradePrice: item.lastTradePrice !== undefined ? {
5620
+ set: item.lastTradePrice
5621
+ } : undefined,
5622
+ changeToday: item.changeToday !== undefined ? {
5623
+ set: item.changeToday
5624
+ } : undefined,
5625
+ assetMarginable: item.assetMarginable !== undefined ? {
5626
+ set: item.assetMarginable
5627
+ } : undefined,
5628
+ },
5629
+ create: {
5630
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5631
+ qty: item.qty !== undefined ? item.qty : undefined,
5632
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5633
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5634
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5635
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5636
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5637
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5638
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5639
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5640
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5641
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5642
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5643
+ },
5644
+ }))
5645
+ } : undefined,
5646
+ newsMentions: prop.order.asset.newsMentions ? {
5647
+ upsert: prop.order.asset.newsMentions.map((item) => ({
5648
+ where: {
5649
+ id: item.id !== undefined ? item.id : undefined,
5650
+ url: item.url !== undefined ? item.url : undefined,
5651
+ },
5652
+ update: {
5653
+ id: item.id !== undefined ? {
5654
+ set: item.id
5655
+ } : undefined,
5656
+ url: item.url !== undefined ? {
5657
+ set: item.url
5658
+ } : undefined,
5659
+ relevancyScore: item.relevancyScore !== undefined ? {
5660
+ set: item.relevancyScore
5661
+ } : undefined,
5662
+ sentimentScore: item.sentimentScore !== undefined ? {
5663
+ set: item.sentimentScore
5664
+ } : undefined,
5665
+ sentimentLabel: item.sentimentLabel !== undefined ? {
5666
+ set: item.sentimentLabel
5667
+ } : undefined,
5668
+ },
5669
+ create: {
5670
+ url: item.url !== undefined ? item.url : undefined,
5671
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
5672
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
5673
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
5674
+ },
5675
+ }))
5676
+ } : undefined,
2457
5677
  },
2458
5678
  create: {
2459
5679
  symbol: prop.order.asset.symbol !== undefined ? prop.order.asset.symbol : undefined,
@@ -2511,6 +5731,77 @@ export const Action = {
2511
5731
  exDividendDate: prop.order.asset.exDividendDate !== undefined ? prop.order.asset.exDividendDate : undefined,
2512
5732
  askPrice: prop.order.asset.askPrice !== undefined ? prop.order.asset.askPrice : undefined,
2513
5733
  bidPrice: prop.order.asset.bidPrice !== undefined ? prop.order.asset.bidPrice : undefined,
5734
+ trades: prop.order.asset.trades ?
5735
+ 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) ? {
5736
+ connect: prop.order.asset.trades.map((item) => ({
5737
+ id: item.id
5738
+ }))
5739
+ }
5740
+ : { connectOrCreate: prop.order.asset.trades.map((item) => ({
5741
+ where: {
5742
+ id: item.id !== undefined ? item.id : undefined,
5743
+ },
5744
+ create: {
5745
+ qty: item.qty !== undefined ? item.qty : undefined,
5746
+ price: item.price !== undefined ? item.price : undefined,
5747
+ total: item.total !== undefined ? item.total : undefined,
5748
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5749
+ signal: item.signal !== undefined ? item.signal : undefined,
5750
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
5751
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
5752
+ summary: item.summary !== undefined ? item.summary : undefined,
5753
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
5754
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
5755
+ status: item.status !== undefined ? item.status : undefined,
5756
+ },
5757
+ }))
5758
+ } : undefined,
5759
+ positions: prop.order.asset.positions ?
5760
+ 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) ? {
5761
+ connect: prop.order.asset.positions.map((item) => ({
5762
+ id: item.id
5763
+ }))
5764
+ }
5765
+ : { connectOrCreate: prop.order.asset.positions.map((item) => ({
5766
+ where: {
5767
+ id: item.id !== undefined ? item.id : undefined,
5768
+ },
5769
+ create: {
5770
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5771
+ qty: item.qty !== undefined ? item.qty : undefined,
5772
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5773
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5774
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5775
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5776
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5777
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5778
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5779
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5780
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5781
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5782
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5783
+ },
5784
+ }))
5785
+ } : undefined,
5786
+ newsMentions: prop.order.asset.newsMentions ?
5787
+ 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) ? {
5788
+ connect: prop.order.asset.newsMentions.map((item) => ({
5789
+ id: item.id
5790
+ }))
5791
+ }
5792
+ : { connectOrCreate: prop.order.asset.newsMentions.map((item) => ({
5793
+ where: {
5794
+ id: item.id !== undefined ? item.id : undefined,
5795
+ url: item.url !== undefined ? item.url : undefined,
5796
+ },
5797
+ create: {
5798
+ url: item.url !== undefined ? item.url : undefined,
5799
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
5800
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
5801
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
5802
+ },
5803
+ }))
5804
+ } : undefined,
2514
5805
  },
2515
5806
  }
2516
5807
  } : undefined,
@@ -2590,6 +5881,104 @@ export const Action = {
2590
5881
  maxOrderSize: prop.order.alpacaAccount.maxOrderSize !== undefined ? prop.order.alpacaAccount.maxOrderSize : undefined,
2591
5882
  minPercentageChange: prop.order.alpacaAccount.minPercentageChange !== undefined ? prop.order.alpacaAccount.minPercentageChange : undefined,
2592
5883
  volumeThreshold: prop.order.alpacaAccount.volumeThreshold !== undefined ? prop.order.alpacaAccount.volumeThreshold : undefined,
5884
+ user: prop.order.alpacaAccount.user ?
5885
+ typeof prop.order.alpacaAccount.user === 'object' && Object.keys(prop.order.alpacaAccount.user).length === 1 && Object.keys(prop.order.alpacaAccount.user)[0] === 'id'
5886
+ ? { connect: {
5887
+ id: prop.order.alpacaAccount.user.id
5888
+ }
5889
+ }
5890
+ : { connectOrCreate: {
5891
+ where: {
5892
+ id: prop.order.alpacaAccount.user.id !== undefined ? prop.order.alpacaAccount.user.id : undefined,
5893
+ email: prop.order.alpacaAccount.user.email !== undefined ? prop.order.alpacaAccount.user.email : undefined,
5894
+ name: prop.order.alpacaAccount.user.name !== undefined ? {
5895
+ equals: prop.order.alpacaAccount.user.name
5896
+ } : undefined,
5897
+ },
5898
+ create: {
5899
+ name: prop.order.alpacaAccount.user.name !== undefined ? prop.order.alpacaAccount.user.name : undefined,
5900
+ email: prop.order.alpacaAccount.user.email !== undefined ? prop.order.alpacaAccount.user.email : undefined,
5901
+ emailVerified: prop.order.alpacaAccount.user.emailVerified !== undefined ? prop.order.alpacaAccount.user.emailVerified : undefined,
5902
+ image: prop.order.alpacaAccount.user.image !== undefined ? prop.order.alpacaAccount.user.image : undefined,
5903
+ role: prop.order.alpacaAccount.user.role !== undefined ? prop.order.alpacaAccount.user.role : undefined,
5904
+ bio: prop.order.alpacaAccount.user.bio !== undefined ? prop.order.alpacaAccount.user.bio : undefined,
5905
+ jobTitle: prop.order.alpacaAccount.user.jobTitle !== undefined ? prop.order.alpacaAccount.user.jobTitle : undefined,
5906
+ currentAccount: prop.order.alpacaAccount.user.currentAccount !== undefined ? prop.order.alpacaAccount.user.currentAccount : undefined,
5907
+ plan: prop.order.alpacaAccount.user.plan !== undefined ? prop.order.alpacaAccount.user.plan : undefined,
5908
+ openaiAPIKey: prop.order.alpacaAccount.user.openaiAPIKey !== undefined ? prop.order.alpacaAccount.user.openaiAPIKey : undefined,
5909
+ openaiModel: prop.order.alpacaAccount.user.openaiModel !== undefined ? prop.order.alpacaAccount.user.openaiModel : undefined,
5910
+ },
5911
+ }
5912
+ } : undefined,
5913
+ trades: prop.order.alpacaAccount.trades ?
5914
+ 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) ? {
5915
+ connect: prop.order.alpacaAccount.trades.map((item) => ({
5916
+ id: item.id
5917
+ }))
5918
+ }
5919
+ : { connectOrCreate: prop.order.alpacaAccount.trades.map((item) => ({
5920
+ where: {
5921
+ id: item.id !== undefined ? item.id : undefined,
5922
+ },
5923
+ create: {
5924
+ qty: item.qty !== undefined ? item.qty : undefined,
5925
+ price: item.price !== undefined ? item.price : undefined,
5926
+ total: item.total !== undefined ? item.total : undefined,
5927
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5928
+ signal: item.signal !== undefined ? item.signal : undefined,
5929
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
5930
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
5931
+ summary: item.summary !== undefined ? item.summary : undefined,
5932
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
5933
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
5934
+ status: item.status !== undefined ? item.status : undefined,
5935
+ },
5936
+ }))
5937
+ } : undefined,
5938
+ positions: prop.order.alpacaAccount.positions ?
5939
+ 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) ? {
5940
+ connect: prop.order.alpacaAccount.positions.map((item) => ({
5941
+ id: item.id
5942
+ }))
5943
+ }
5944
+ : { connectOrCreate: prop.order.alpacaAccount.positions.map((item) => ({
5945
+ where: {
5946
+ id: item.id !== undefined ? item.id : undefined,
5947
+ },
5948
+ create: {
5949
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5950
+ qty: item.qty !== undefined ? item.qty : undefined,
5951
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5952
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5953
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5954
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5955
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5956
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5957
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5958
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5959
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5960
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5961
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5962
+ },
5963
+ }))
5964
+ } : undefined,
5965
+ alerts: prop.order.alpacaAccount.alerts ?
5966
+ 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) ? {
5967
+ connect: prop.order.alpacaAccount.alerts.map((item) => ({
5968
+ id: item.id
5969
+ }))
5970
+ }
5971
+ : { connectOrCreate: prop.order.alpacaAccount.alerts.map((item) => ({
5972
+ where: {
5973
+ id: item.id !== undefined ? item.id : undefined,
5974
+ },
5975
+ create: {
5976
+ message: item.message !== undefined ? item.message : undefined,
5977
+ type: item.type !== undefined ? item.type : undefined,
5978
+ isRead: item.isRead !== undefined ? item.isRead : undefined,
5979
+ },
5980
+ }))
5981
+ } : undefined,
2593
5982
  },
2594
5983
  }
2595
5984
  } : undefined,
@@ -2661,6 +6050,77 @@ export const Action = {
2661
6050
  exDividendDate: prop.order.asset.exDividendDate !== undefined ? prop.order.asset.exDividendDate : undefined,
2662
6051
  askPrice: prop.order.asset.askPrice !== undefined ? prop.order.asset.askPrice : undefined,
2663
6052
  bidPrice: prop.order.asset.bidPrice !== undefined ? prop.order.asset.bidPrice : undefined,
6053
+ trades: prop.order.asset.trades ?
6054
+ 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) ? {
6055
+ connect: prop.order.asset.trades.map((item) => ({
6056
+ id: item.id
6057
+ }))
6058
+ }
6059
+ : { connectOrCreate: prop.order.asset.trades.map((item) => ({
6060
+ where: {
6061
+ id: item.id !== undefined ? item.id : undefined,
6062
+ },
6063
+ create: {
6064
+ qty: item.qty !== undefined ? item.qty : undefined,
6065
+ price: item.price !== undefined ? item.price : undefined,
6066
+ total: item.total !== undefined ? item.total : undefined,
6067
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
6068
+ signal: item.signal !== undefined ? item.signal : undefined,
6069
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
6070
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
6071
+ summary: item.summary !== undefined ? item.summary : undefined,
6072
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
6073
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
6074
+ status: item.status !== undefined ? item.status : undefined,
6075
+ },
6076
+ }))
6077
+ } : undefined,
6078
+ positions: prop.order.asset.positions ?
6079
+ 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) ? {
6080
+ connect: prop.order.asset.positions.map((item) => ({
6081
+ id: item.id
6082
+ }))
6083
+ }
6084
+ : { connectOrCreate: prop.order.asset.positions.map((item) => ({
6085
+ where: {
6086
+ id: item.id !== undefined ? item.id : undefined,
6087
+ },
6088
+ create: {
6089
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
6090
+ qty: item.qty !== undefined ? item.qty : undefined,
6091
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
6092
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
6093
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
6094
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
6095
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
6096
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
6097
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
6098
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
6099
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
6100
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
6101
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
6102
+ },
6103
+ }))
6104
+ } : undefined,
6105
+ newsMentions: prop.order.asset.newsMentions ?
6106
+ 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) ? {
6107
+ connect: prop.order.asset.newsMentions.map((item) => ({
6108
+ id: item.id
6109
+ }))
6110
+ }
6111
+ : { connectOrCreate: prop.order.asset.newsMentions.map((item) => ({
6112
+ where: {
6113
+ id: item.id !== undefined ? item.id : undefined,
6114
+ url: item.url !== undefined ? item.url : undefined,
6115
+ },
6116
+ create: {
6117
+ url: item.url !== undefined ? item.url : undefined,
6118
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
6119
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
6120
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
6121
+ },
6122
+ }))
6123
+ } : undefined,
2664
6124
  },
2665
6125
  }
2666
6126
  } : undefined,