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