@fintekkers/ledger-models 0.0.100
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.
- package/.vscode/launch.json +20 -0
- package/README.md +25 -0
- package/babel.config.js +3 -0
- package/index.js +14 -0
- package/index.js.map +1 -0
- package/index.ts +18 -0
- package/node/fintekkers/models/portfolio/portfolio_grpc_pb.js +1 -0
- package/node/fintekkers/models/portfolio/portfolio_pb.d.ts +62 -0
- package/node/fintekkers/models/portfolio/portfolio_pb.js +474 -0
- package/node/fintekkers/models/position/field_grpc_pb.js +1 -0
- package/node/fintekkers/models/position/field_pb.d.ts +39 -0
- package/node/fintekkers/models/position/field_pb.js +60 -0
- package/node/fintekkers/models/position/measure_grpc_pb.js +1 -0
- package/node/fintekkers/models/position/measure_pb.d.ts +17 -0
- package/node/fintekkers/models/position/measure_pb.js +38 -0
- package/node/fintekkers/models/position/position_filter_grpc_pb.js +1 -0
- package/node/fintekkers/models/position/position_filter_pb.d.ts +36 -0
- package/node/fintekkers/models/position/position_filter_pb.js +268 -0
- package/node/fintekkers/models/position/position_grpc_pb.js +1 -0
- package/node/fintekkers/models/position/position_pb.d.ts +59 -0
- package/node/fintekkers/models/position/position_pb.js +401 -0
- package/node/fintekkers/models/position/position_status_grpc_pb.js +1 -0
- package/node/fintekkers/models/position/position_status_pb.d.ts +14 -0
- package/node/fintekkers/models/position/position_status_pb.js +35 -0
- package/node/fintekkers/models/position/position_util_grpc_pb.js +1 -0
- package/node/fintekkers/models/position/position_util_pb.d.ts +98 -0
- package/node/fintekkers/models/position/position_util_pb.js +606 -0
- package/node/fintekkers/models/price/price_grpc_pb.js +1 -0
- package/node/fintekkers/models/price/price_pb.d.ts +73 -0
- package/node/fintekkers/models/price/price_pb.js +550 -0
- package/node/fintekkers/models/security/coupon_frequency_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/coupon_frequency_pb.d.ts +16 -0
- package/node/fintekkers/models/security/coupon_frequency_pb.js +37 -0
- package/node/fintekkers/models/security/coupon_type_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/coupon_type_pb.d.ts +14 -0
- package/node/fintekkers/models/security/coupon_type_pb.js +35 -0
- package/node/fintekkers/models/security/identifier/identifier_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/identifier/identifier_pb.d.ts +37 -0
- package/node/fintekkers/models/security/identifier/identifier_pb.js +268 -0
- package/node/fintekkers/models/security/identifier/identifier_type_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/identifier/identifier_type_pb.d.ts +17 -0
- package/node/fintekkers/models/security/identifier/identifier_type_pb.js +38 -0
- package/node/fintekkers/models/security/security_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/security_pb.d.ts +132 -0
- package/node/fintekkers/models/security/security_pb.js +1055 -0
- package/node/fintekkers/models/security/security_pb.test.js +32 -0
- package/node/fintekkers/models/security/security_quantity_type_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/security_quantity_type_pb.d.ts +14 -0
- package/node/fintekkers/models/security/security_quantity_type_pb.js +35 -0
- package/node/fintekkers/models/security/security_type_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/security_type_pb.d.ts +16 -0
- package/node/fintekkers/models/security/security_type_pb.js +37 -0
- package/node/fintekkers/models/security/tenor_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/tenor_pb.d.ts +37 -0
- package/node/fintekkers/models/security/tenor_pb.js +268 -0
- package/node/fintekkers/models/security/tenor_type_grpc_pb.js +1 -0
- package/node/fintekkers/models/security/tenor_type_pb.d.ts +13 -0
- package/node/fintekkers/models/security/tenor_type_pb.js +34 -0
- package/node/fintekkers/models/strategy/strategy_allocation_grpc_pb.js +1 -0
- package/node/fintekkers/models/strategy/strategy_allocation_pb.d.ts +83 -0
- package/node/fintekkers/models/strategy/strategy_allocation_pb.js +630 -0
- package/node/fintekkers/models/strategy/strategy_grpc_pb.js +1 -0
- package/node/fintekkers/models/strategy/strategy_pb.d.ts +68 -0
- package/node/fintekkers/models/strategy/strategy_pb.js +525 -0
- package/node/fintekkers/models/transaction/transaction_grpc_pb.js +1 -0
- package/node/fintekkers/models/transaction/transaction_pb.d.ts +126 -0
- package/node/fintekkers/models/transaction/transaction_pb.js +997 -0
- package/node/fintekkers/models/transaction/transaction_type_grpc_pb.js +1 -0
- package/node/fintekkers/models/transaction/transaction_type_pb.d.ts +17 -0
- package/node/fintekkers/models/transaction/transaction_type_pb.js +38 -0
- package/node/fintekkers/models/util/decimal_value_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/decimal_value_pb.d.ts +27 -0
- package/node/fintekkers/models/util/decimal_value_pb.js +176 -0
- package/node/fintekkers/models/util/endpoint_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/endpoint_pb.d.ts +33 -0
- package/node/fintekkers/models/util/endpoint_pb.js +236 -0
- package/node/fintekkers/models/util/local_date_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/local_date_pb.d.ts +33 -0
- package/node/fintekkers/models/util/local_date_pb.js +236 -0
- package/node/fintekkers/models/util/local_timestamp_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/local_timestamp_pb.d.ts +34 -0
- package/node/fintekkers/models/util/local_timestamp_pb.js +229 -0
- package/node/fintekkers/models/util/lock/node_partition_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/lock/node_partition_pb.d.ts +36 -0
- package/node/fintekkers/models/util/lock/node_partition_pb.js +266 -0
- package/node/fintekkers/models/util/lock/node_state_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/lock/node_state_pb.d.ts +54 -0
- package/node/fintekkers/models/util/lock/node_state_pb.js +395 -0
- package/node/fintekkers/models/util/uuid_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/uuid_pb.d.ts +29 -0
- package/node/fintekkers/models/util/uuid_pb.js +200 -0
- package/node/fintekkers/requests/portfolio/create_portfolio_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/portfolio/create_portfolio_request_pb.d.ts +37 -0
- package/node/fintekkers/requests/portfolio/create_portfolio_request_pb.js +259 -0
- package/node/fintekkers/requests/portfolio/create_portfolio_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/portfolio/create_portfolio_response_pb.d.ts +43 -0
- package/node/fintekkers/requests/portfolio/create_portfolio_response_pb.js +321 -0
- package/node/fintekkers/requests/portfolio/query_portfolio_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/portfolio/query_portfolio_request_pb.d.ts +50 -0
- package/node/fintekkers/requests/portfolio/query_portfolio_request_pb.js +374 -0
- package/node/fintekkers/requests/portfolio/query_portfolio_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/portfolio/query_portfolio_response_pb.d.ts +43 -0
- package/node/fintekkers/requests/portfolio/query_portfolio_response_pb.js +321 -0
- package/node/fintekkers/requests/position/query_position_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/position/query_position_request_pb.d.ts +67 -0
- package/node/fintekkers/requests/position/query_position_request_pb.js +519 -0
- package/node/fintekkers/requests/position/query_position_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/position/query_position_response_pb.d.ts +46 -0
- package/node/fintekkers/requests/position/query_position_response_pb.js +351 -0
- package/node/fintekkers/requests/price/create_price_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/price/create_price_request_pb.d.ts +37 -0
- package/node/fintekkers/requests/price/create_price_request_pb.js +259 -0
- package/node/fintekkers/requests/price/create_price_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/price/create_price_response_pb.d.ts +43 -0
- package/node/fintekkers/requests/price/create_price_response_pb.js +321 -0
- package/node/fintekkers/requests/price/query_price_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/price/query_price_request_pb.d.ts +50 -0
- package/node/fintekkers/requests/price/query_price_request_pb.js +374 -0
- package/node/fintekkers/requests/price/query_price_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/price/query_price_response_pb.d.ts +43 -0
- package/node/fintekkers/requests/price/query_price_response_pb.js +321 -0
- package/node/fintekkers/requests/security/create_security_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/security/create_security_request_pb.d.ts +37 -0
- package/node/fintekkers/requests/security/create_security_request_pb.js +259 -0
- package/node/fintekkers/requests/security/create_security_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/security/create_security_response_pb.d.ts +51 -0
- package/node/fintekkers/requests/security/create_security_response_pb.js +365 -0
- package/node/fintekkers/requests/security/query_security_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/security/query_security_request_pb.d.ts +50 -0
- package/node/fintekkers/requests/security/query_security_request_pb.js +374 -0
- package/node/fintekkers/requests/security/query_security_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/security/query_security_response_pb.d.ts +49 -0
- package/node/fintekkers/requests/security/query_security_response_pb.js +376 -0
- package/node/fintekkers/requests/transaction/create_transaction_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/transaction/create_transaction_request_pb.d.ts +37 -0
- package/node/fintekkers/requests/transaction/create_transaction_request_pb.js +259 -0
- package/node/fintekkers/requests/transaction/create_transaction_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/transaction/create_transaction_response_pb.d.ts +44 -0
- package/node/fintekkers/requests/transaction/create_transaction_response_pb.js +312 -0
- package/node/fintekkers/requests/transaction/query_transaction_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/transaction/query_transaction_request_pb.d.ts +50 -0
- package/node/fintekkers/requests/transaction/query_transaction_request_pb.js +374 -0
- package/node/fintekkers/requests/transaction/query_transaction_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/transaction/query_transaction_response_pb.d.ts +43 -0
- package/node/fintekkers/requests/transaction/query_transaction_response_pb.js +321 -0
- package/node/fintekkers/requests/util/errors/error_grpc_pb.js +1 -0
- package/node/fintekkers/requests/util/errors/error_pb.d.ts +65 -0
- package/node/fintekkers/requests/util/errors/error_pb.js +441 -0
- package/node/fintekkers/requests/util/errors/message_grpc_pb.js +1 -0
- package/node/fintekkers/requests/util/errors/message_pb.d.ts +30 -0
- package/node/fintekkers/requests/util/errors/message_pb.js +206 -0
- package/node/fintekkers/requests/util/errors/summary_grpc_pb.js +1 -0
- package/node/fintekkers/requests/util/errors/summary_pb.d.ts +35 -0
- package/node/fintekkers/requests/util/errors/summary_pb.js +261 -0
- package/node/fintekkers/requests/util/lock/lock_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/util/lock/lock_request_pb.d.ts +37 -0
- package/node/fintekkers/requests/util/lock/lock_request_pb.js +259 -0
- package/node/fintekkers/requests/util/lock/lock_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/util/lock/lock_response_pb.d.ts +51 -0
- package/node/fintekkers/requests/util/lock/lock_response_pb.js +365 -0
- package/node/fintekkers/requests/util/operation_grpc_pb.js +1 -0
- package/node/fintekkers/requests/util/operation_pb.d.ts +15 -0
- package/node/fintekkers/requests/util/operation_pb.js +36 -0
- package/node/fintekkers/requests/valuation/valuation_request_grpc_pb.js +1 -0
- package/node/fintekkers/requests/valuation/valuation_request_pb.d.ts +61 -0
- package/node/fintekkers/requests/valuation/valuation_request_pb.js +457 -0
- package/node/fintekkers/requests/valuation/valuation_response_grpc_pb.js +1 -0
- package/node/fintekkers/requests/valuation/valuation_response_pb.d.ts +43 -0
- package/node/fintekkers/requests/valuation/valuation_response_pb.js +321 -0
- package/node/fintekkers/services/lock-service/lock_service_grpc_pb.d.ts +129 -0
- package/node/fintekkers/services/lock-service/lock_service_grpc_pb.js +179 -0
- package/node/fintekkers/services/lock-service/lock_service_pb.d.ts +78 -0
- package/node/fintekkers/services/lock-service/lock_service_pb.js +576 -0
- package/node/fintekkers/services/portfolio-service/portfolio_service_grpc_pb.d.ts +129 -0
- package/node/fintekkers/services/portfolio-service/portfolio_service_grpc_pb.js +136 -0
- package/node/fintekkers/services/portfolio-service/portfolio_service_pb.d.ts +12 -0
- package/node/fintekkers/services/portfolio-service/portfolio_service_pb.js +33 -0
- package/node/fintekkers/services/position-service/position_service_grpc_pb.d.ts +59 -0
- package/node/fintekkers/services/position-service/position_service_grpc_pb.js +71 -0
- package/node/fintekkers/services/position-service/position_service_pb.d.ts +10 -0
- package/node/fintekkers/services/position-service/position_service_pb.js +29 -0
- package/node/fintekkers/services/price-service/price_service_grpc_pb.d.ts +129 -0
- package/node/fintekkers/services/price-service/price_service_grpc_pb.js +136 -0
- package/node/fintekkers/services/price-service/price_service_pb.d.ts +12 -0
- package/node/fintekkers/services/price-service/price_service_pb.js +33 -0
- package/node/fintekkers/services/security-service/security_service_grpc_pb.d.ts +129 -0
- package/node/fintekkers/services/security-service/security_service_grpc_pb.js +136 -0
- package/node/fintekkers/services/security-service/security_service_pb.d.ts +12 -0
- package/node/fintekkers/services/security-service/security_service_pb.js +33 -0
- package/node/fintekkers/services/transaction-service/transaction_service_grpc_pb.d.ts +129 -0
- package/node/fintekkers/services/transaction-service/transaction_service_grpc_pb.js +136 -0
- package/node/fintekkers/services/transaction-service/transaction_service_pb.d.ts +12 -0
- package/node/fintekkers/services/transaction-service/transaction_service_pb.js +33 -0
- package/node/fintekkers/services/valuation-service/valuation_service_grpc_pb.d.ts +43 -0
- package/node/fintekkers/services/valuation-service/valuation_service_grpc_pb.js +45 -0
- package/node/fintekkers/services/valuation-service/valuation_service_pb.d.ts +9 -0
- package/node/fintekkers/services/valuation-service/valuation_service_pb.js +27 -0
- package/node/wrappers/models/position/position.js +103 -0
- package/node/wrappers/models/position/position.js.map +1 -0
- package/node/wrappers/models/position/position.ts +128 -0
- package/node/wrappers/models/security/security.js +78 -0
- package/node/wrappers/models/security/security.js.map +1 -0
- package/node/wrappers/models/security/security.ts +91 -0
- package/node/wrappers/models/utils/datetime.js +63 -0
- package/node/wrappers/models/utils/datetime.js.map +1 -0
- package/node/wrappers/models/utils/datetime.ts +78 -0
- package/node/wrappers/models/utils/serialization.js +44 -0
- package/node/wrappers/models/utils/serialization.js.map +1 -0
- package/node/wrappers/models/utils/serialization.test.js +71 -0
- package/node/wrappers/models/utils/serialization.test.js.map +1 -0
- package/node/wrappers/models/utils/serialization.test.ts +37 -0
- package/node/wrappers/models/utils/serialization.ts +47 -0
- package/node/wrappers/models/utils/util.js +28 -0
- package/node/wrappers/models/utils/util.js.map +1 -0
- package/node/wrappers/models/utils/util.ts +28 -0
- package/node/wrappers/models/utils/uuid.js +53 -0
- package/node/wrappers/models/utils/uuid.js.map +1 -0
- package/node/wrappers/models/utils/uuid.ts +67 -0
- package/node/wrappers/portfolio.test.js +81 -0
- package/node/wrappers/portfolio.test.js.map +1 -0
- package/node/wrappers/portfolio.test.ts +36 -0
- package/node/wrappers/position.test.js +130 -0
- package/node/wrappers/position.test.js.map +1 -0
- package/node/wrappers/position.test.ts +109 -0
- package/node/wrappers/security.test.js +115 -0
- package/node/wrappers/security.test.js.map +1 -0
- package/node/wrappers/security.test.ts +75 -0
- package/node/wrappers/services/portfolio-service/PortfolioService.js +144 -0
- package/node/wrappers/services/portfolio-service/PortfolioService.js.map +1 -0
- package/node/wrappers/services/portfolio-service/PortfolioService.ts +99 -0
- package/node/wrappers/services/position-service/PositionService.js +90 -0
- package/node/wrappers/services/position-service/PositionService.js.map +1 -0
- package/node/wrappers/services/position-service/PositionService.ts +68 -0
- package/node/wrappers/services/security-service/SecurityService.js +145 -0
- package/node/wrappers/services/security-service/SecurityService.js.map +1 -0
- package/node/wrappers/services/security-service/SecurityService.ts +99 -0
- package/package.json +36 -0
- package/tsconfig.json +27 -0
- package/web/fintekkers/models/portfolio/portfolio_pb.d.ts +60 -0
- package/web/fintekkers/models/portfolio/portfolio_pb.js +468 -0
- package/web/fintekkers/models/position/field_pb.d.ts +35 -0
- package/web/fintekkers/models/position/field_pb.js +54 -0
- package/web/fintekkers/models/position/measure_pb.d.ts +13 -0
- package/web/fintekkers/models/position/measure_pb.js +32 -0
- package/web/fintekkers/models/position/position_filter_pb.d.ts +33 -0
- package/web/fintekkers/models/position/position_filter_pb.js +262 -0
- package/web/fintekkers/models/position/position_pb.d.ts +57 -0
- package/web/fintekkers/models/position/position_pb.js +395 -0
- package/web/fintekkers/models/position/position_status_pb.d.ts +10 -0
- package/web/fintekkers/models/position/position_status_pb.js +29 -0
- package/web/fintekkers/models/position/position_util_pb.d.ts +86 -0
- package/web/fintekkers/models/position/position_util_pb.js +600 -0
- package/web/fintekkers/models/price/price_pb.d.ts +70 -0
- package/web/fintekkers/models/price/price_pb.js +544 -0
- package/web/fintekkers/models/security/coupon_frequency_pb.d.ts +12 -0
- package/web/fintekkers/models/security/coupon_frequency_pb.js +31 -0
- package/web/fintekkers/models/security/coupon_type_pb.d.ts +10 -0
- package/web/fintekkers/models/security/coupon_type_pb.js +29 -0
- package/web/fintekkers/models/security/identifier/identifier_pb.d.ts +35 -0
- package/web/fintekkers/models/security/identifier/identifier_pb.js +262 -0
- package/web/fintekkers/models/security/identifier/identifier_type_pb.d.ts +13 -0
- package/web/fintekkers/models/security/identifier/identifier_type_pb.js +32 -0
- package/web/fintekkers/models/security/security_pb.d.ts +137 -0
- package/web/fintekkers/models/security/security_pb.js +1049 -0
- package/web/fintekkers/models/security/security_quantity_type_pb.d.ts +10 -0
- package/web/fintekkers/models/security/security_quantity_type_pb.js +29 -0
- package/web/fintekkers/models/security/security_type_pb.d.ts +12 -0
- package/web/fintekkers/models/security/security_type_pb.js +31 -0
- package/web/fintekkers/models/security/tenor_pb.d.ts +35 -0
- package/web/fintekkers/models/security/tenor_pb.js +262 -0
- package/web/fintekkers/models/security/tenor_type_pb.d.ts +9 -0
- package/web/fintekkers/models/security/tenor_type_pb.js +28 -0
- package/web/fintekkers/models/strategy/strategy_allocation_pb.d.ts +78 -0
- package/web/fintekkers/models/strategy/strategy_allocation_pb.js +624 -0
- package/web/fintekkers/models/strategy/strategy_pb.d.ts +66 -0
- package/web/fintekkers/models/strategy/strategy_pb.js +519 -0
- package/web/fintekkers/models/transaction/transaction_pb.d.ts +128 -0
- package/web/fintekkers/models/transaction/transaction_pb.js +991 -0
- package/web/fintekkers/models/transaction/transaction_type_pb.d.ts +13 -0
- package/web/fintekkers/models/transaction/transaction_type_pb.js +32 -0
- package/web/fintekkers/models/util/decimal_value_pb.d.ts +22 -0
- package/web/fintekkers/models/util/decimal_value_pb.js +170 -0
- package/web/fintekkers/models/util/endpoint_pb.d.ts +30 -0
- package/web/fintekkers/models/util/endpoint_pb.js +230 -0
- package/web/fintekkers/models/util/local_date_pb.d.ts +30 -0
- package/web/fintekkers/models/util/local_date_pb.js +230 -0
- package/web/fintekkers/models/util/local_timestamp_pb.d.ts +29 -0
- package/web/fintekkers/models/util/local_timestamp_pb.js +223 -0
- package/web/fintekkers/models/util/lock/node_partition_pb.d.ts +34 -0
- package/web/fintekkers/models/util/lock/node_partition_pb.js +260 -0
- package/web/fintekkers/models/util/lock/node_state_pb.d.ts +51 -0
- package/web/fintekkers/models/util/lock/node_state_pb.js +389 -0
- package/web/fintekkers/models/util/uuid_pb.d.ts +24 -0
- package/web/fintekkers/models/util/uuid_pb.js +194 -0
- package/web/fintekkers/requests/portfolio/create_portfolio_request_pb.d.ts +33 -0
- package/web/fintekkers/requests/portfolio/create_portfolio_request_pb.js +253 -0
- package/web/fintekkers/requests/portfolio/create_portfolio_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/portfolio/create_portfolio_response_pb.js +315 -0
- package/web/fintekkers/requests/portfolio/query_portfolio_request_pb.d.ts +47 -0
- package/web/fintekkers/requests/portfolio/query_portfolio_request_pb.js +368 -0
- package/web/fintekkers/requests/portfolio/query_portfolio_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/portfolio/query_portfolio_response_pb.js +315 -0
- package/web/fintekkers/requests/position/query_position_request_pb.d.ts +68 -0
- package/web/fintekkers/requests/position/query_position_request_pb.js +513 -0
- package/web/fintekkers/requests/position/query_position_response_pb.d.ts +44 -0
- package/web/fintekkers/requests/position/query_position_response_pb.js +345 -0
- package/web/fintekkers/requests/price/create_price_request_pb.d.ts +33 -0
- package/web/fintekkers/requests/price/create_price_request_pb.js +253 -0
- package/web/fintekkers/requests/price/create_price_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/price/create_price_response_pb.js +315 -0
- package/web/fintekkers/requests/price/query_price_request_pb.d.ts +47 -0
- package/web/fintekkers/requests/price/query_price_request_pb.js +368 -0
- package/web/fintekkers/requests/price/query_price_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/price/query_price_response_pb.js +315 -0
- package/web/fintekkers/requests/security/create_security_request_pb.d.ts +33 -0
- package/web/fintekkers/requests/security/create_security_request_pb.js +253 -0
- package/web/fintekkers/requests/security/create_security_response_pb.d.ts +47 -0
- package/web/fintekkers/requests/security/create_security_response_pb.js +359 -0
- package/web/fintekkers/requests/security/query_security_request_pb.d.ts +47 -0
- package/web/fintekkers/requests/security/query_security_request_pb.js +368 -0
- package/web/fintekkers/requests/security/query_security_response_pb.d.ts +47 -0
- package/web/fintekkers/requests/security/query_security_response_pb.js +370 -0
- package/web/fintekkers/requests/transaction/create_transaction_request_pb.d.ts +33 -0
- package/web/fintekkers/requests/transaction/create_transaction_request_pb.js +253 -0
- package/web/fintekkers/requests/transaction/create_transaction_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/transaction/create_transaction_response_pb.js +306 -0
- package/web/fintekkers/requests/transaction/query_transaction_request_pb.d.ts +47 -0
- package/web/fintekkers/requests/transaction/query_transaction_request_pb.js +368 -0
- package/web/fintekkers/requests/transaction/query_transaction_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/transaction/query_transaction_response_pb.js +315 -0
- package/web/fintekkers/requests/util/errors/error_pb.d.ts +57 -0
- package/web/fintekkers/requests/util/errors/error_pb.js +435 -0
- package/web/fintekkers/requests/util/errors/message_pb.d.ts +26 -0
- package/web/fintekkers/requests/util/errors/message_pb.js +200 -0
- package/web/fintekkers/requests/util/errors/summary_pb.d.ts +31 -0
- package/web/fintekkers/requests/util/errors/summary_pb.js +255 -0
- package/web/fintekkers/requests/util/lock/lock_request_pb.d.ts +33 -0
- package/web/fintekkers/requests/util/lock/lock_request_pb.js +253 -0
- package/web/fintekkers/requests/util/lock/lock_response_pb.d.ts +47 -0
- package/web/fintekkers/requests/util/lock/lock_response_pb.js +359 -0
- package/web/fintekkers/requests/util/operation_pb.d.ts +11 -0
- package/web/fintekkers/requests/util/operation_pb.js +30 -0
- package/web/fintekkers/requests/valuation/valuation_request_pb.d.ts +59 -0
- package/web/fintekkers/requests/valuation/valuation_request_pb.js +451 -0
- package/web/fintekkers/requests/valuation/valuation_response_pb.d.ts +40 -0
- package/web/fintekkers/requests/valuation/valuation_response_pb.js +315 -0
- package/web/fintekkers/services/lock-service/lock_service_grpc_web_pb.d.ts +94 -0
- package/web/fintekkers/services/lock-service/lock_service_grpc_web_pb.js +451 -0
- package/web/fintekkers/services/lock-service/lock_service_pb.d.ts +69 -0
- package/web/fintekkers/services/lock-service/lock_service_pb.js +570 -0
- package/web/fintekkers/services/portfolio-service/portfolio_service_grpc_web_pb.d.ts +93 -0
- package/web/fintekkers/services/portfolio-service/portfolio_service_grpc_web_pb.js +451 -0
- package/web/fintekkers/services/portfolio-service/portfolio_service_pb.d.ts +9 -0
- package/web/fintekkers/services/portfolio-service/portfolio_service_pb.js +27 -0
- package/web/fintekkers/services/position-service/position_service_grpc_web_pb.d.ts +43 -0
- package/web/fintekkers/services/position-service/position_service_grpc_web_pb.js +203 -0
- package/web/fintekkers/services/position-service/position_service_pb.d.ts +7 -0
- package/web/fintekkers/services/position-service/position_service_pb.js +23 -0
- package/web/fintekkers/services/price-service/price_service_grpc_web_pb.d.ts +93 -0
- package/web/fintekkers/services/price-service/price_service_grpc_web_pb.js +451 -0
- package/web/fintekkers/services/price-service/price_service_pb.d.ts +9 -0
- package/web/fintekkers/services/price-service/price_service_pb.js +27 -0
- package/web/fintekkers/services/security-service/security_service_grpc_web_pb.d.ts +93 -0
- package/web/fintekkers/services/security-service/security_service_grpc_web_pb.js +451 -0
- package/web/fintekkers/services/security-service/security_service_pb.d.ts +9 -0
- package/web/fintekkers/services/security-service/security_service_pb.js +27 -0
- package/web/fintekkers/services/transaction-service/transaction_service_grpc_web_pb.d.ts +93 -0
- package/web/fintekkers/services/transaction-service/transaction_service_grpc_web_pb.js +451 -0
- package/web/fintekkers/services/transaction-service/transaction_service_pb.d.ts +9 -0
- package/web/fintekkers/services/transaction-service/transaction_service_pb.js +27 -0
- package/web/fintekkers/services/valuation-service/valuation_service_grpc_web_pb.d.ts +32 -0
- package/web/fintekkers/services/valuation-service/valuation_service_grpc_web_pb.js +145 -0
- package/web/fintekkers/services/valuation-service/valuation_service_pb.d.ts +6 -0
- package/web/fintekkers/services/valuation-service/valuation_service_pb.js +21 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.testSecurity = void 0;
|
|
40
|
+
// Models
|
|
41
|
+
var security_pb_1 = require("../fintekkers/models/security/security_pb");
|
|
42
|
+
var coupon_frequency_pb_1 = require("../fintekkers/models/security/coupon_frequency_pb");
|
|
43
|
+
var decimal_value_pb_1 = require("../fintekkers/models/util/decimal_value_pb");
|
|
44
|
+
var coupon_type_pb_1 = require("../fintekkers/models/security/coupon_type_pb");
|
|
45
|
+
var security_type_pb_1 = require("../fintekkers/models/security/security_type_pb");
|
|
46
|
+
var local_date_pb_1 = require("../fintekkers/models/util/local_date_pb");
|
|
47
|
+
// Model Utils
|
|
48
|
+
var field_pb_1 = require("../fintekkers/models/position/field_pb");
|
|
49
|
+
var uuid = require("./models/utils/uuid");
|
|
50
|
+
var dt = require("./models/utils/datetime");
|
|
51
|
+
var SecurityService_1 = require("./services/security-service/SecurityService");
|
|
52
|
+
function testSecurity() {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54
|
+
var id_proto, now, securityService, usd_security, security, faceValue, couponRate, issueDate, maturityDate, validationSummary, createSecurityResponse, searchResults;
|
|
55
|
+
return __generator(this, function (_a) {
|
|
56
|
+
switch (_a.label) {
|
|
57
|
+
case 0:
|
|
58
|
+
id_proto = uuid.UUID.random().toUUIDProto();
|
|
59
|
+
now = dt.ZonedDateTime.now();
|
|
60
|
+
securityService = new SecurityService_1.SecurityService();
|
|
61
|
+
return [4 /*yield*/, securityService
|
|
62
|
+
.searchSecurity(now.to_date_proto(), field_pb_1.FieldProto.ASSET_CLASS, 'Cash')
|
|
63
|
+
.then(function (securities) {
|
|
64
|
+
return securities[0];
|
|
65
|
+
})];
|
|
66
|
+
case 1:
|
|
67
|
+
usd_security = _a.sent();
|
|
68
|
+
security = new security_pb_1.SecurityProto();
|
|
69
|
+
security.setObjectClass('Security');
|
|
70
|
+
security.setVersion('0.0.1');
|
|
71
|
+
security.setUuid(id_proto);
|
|
72
|
+
security.setSettlementCurrency(usd_security.proto);
|
|
73
|
+
security.setAsOf(now.to_date_proto());
|
|
74
|
+
security.setAssetClass('FixedIncome');
|
|
75
|
+
security.setCouponFrequency(coupon_frequency_pb_1.CouponFrequencyProto.SEMIANNUALLY);
|
|
76
|
+
security.setCouponType(coupon_type_pb_1.CouponTypeProto.FIXED);
|
|
77
|
+
security.setSecurityType(security_type_pb_1.SecurityTypeProto.BOND_SECURITY);
|
|
78
|
+
faceValue = new decimal_value_pb_1.DecimalValueProto();
|
|
79
|
+
faceValue.setArbitraryPrecisionValue('1000.00');
|
|
80
|
+
security.setFaceValue(faceValue);
|
|
81
|
+
couponRate = new decimal_value_pb_1.DecimalValueProto();
|
|
82
|
+
couponRate.setArbitraryPrecisionValue('0.05');
|
|
83
|
+
security.setCouponRate(couponRate); // Fixed a typo here. It was security.setFaceValue(couponRate);
|
|
84
|
+
issueDate = new local_date_pb_1.LocalDateProto();
|
|
85
|
+
issueDate.setYear(2023);
|
|
86
|
+
issueDate.setMonth(1);
|
|
87
|
+
issueDate.setDay(1);
|
|
88
|
+
security.setIssueDate(issueDate);
|
|
89
|
+
security.setDatedDate(issueDate);
|
|
90
|
+
maturityDate = new local_date_pb_1.LocalDateProto();
|
|
91
|
+
maturityDate.setYear(2033); //10Y
|
|
92
|
+
maturityDate.setMonth(1);
|
|
93
|
+
maturityDate.setDay(1);
|
|
94
|
+
security.setMaturityDate(maturityDate);
|
|
95
|
+
security.setIssuerName('US Treasury');
|
|
96
|
+
security.setDescription('Dummy US Treasury 10Y Bond');
|
|
97
|
+
return [4 /*yield*/, securityService.validateCreateSecurity(security)];
|
|
98
|
+
case 2:
|
|
99
|
+
validationSummary = _a.sent();
|
|
100
|
+
console.log(validationSummary);
|
|
101
|
+
return [4 /*yield*/, securityService.createSecurity(security)];
|
|
102
|
+
case 3:
|
|
103
|
+
createSecurityResponse = _a.sent();
|
|
104
|
+
console.log(createSecurityResponse);
|
|
105
|
+
return [4 /*yield*/, securityService.searchSecurity(now.to_date_proto(), field_pb_1.FieldProto.ASSET_CLASS, 'Fixed Income')];
|
|
106
|
+
case 4:
|
|
107
|
+
searchResults = _a.sent();
|
|
108
|
+
console.log('There are %d securities in this response', searchResults.length);
|
|
109
|
+
return [2 /*return*/];
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
exports.testSecurity = testSecurity;
|
|
115
|
+
//# sourceMappingURL=security.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security.test.js","sourceRoot":"","sources":["security.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// Models
|
|
2
|
+
import { SecurityProto } from '../fintekkers/models/security/security_pb';
|
|
3
|
+
import { CouponFrequencyProto } from '../fintekkers/models/security/coupon_frequency_pb';
|
|
4
|
+
import { DecimalValueProto } from '../fintekkers/models/util/decimal_value_pb';
|
|
5
|
+
import { CouponTypeProto } from '../fintekkers/models/security/coupon_type_pb';
|
|
6
|
+
import { SecurityTypeProto } from '../fintekkers/models/security/security_type_pb';
|
|
7
|
+
import { LocalDateProto } from '../fintekkers/models/util/local_date_pb';
|
|
8
|
+
|
|
9
|
+
// Model Utils
|
|
10
|
+
import { FieldProto } from '../fintekkers/models/position/field_pb';
|
|
11
|
+
|
|
12
|
+
import * as uuid from './models/utils/uuid';
|
|
13
|
+
import * as dt from './models/utils/datetime';
|
|
14
|
+
|
|
15
|
+
import { CreateSecurityResponseProto } from '../fintekkers/requests/security/create_security_response_pb';
|
|
16
|
+
import { SecurityService } from './services/security-service/SecurityService';
|
|
17
|
+
|
|
18
|
+
async function testSecurity(): Promise<void> {
|
|
19
|
+
const id_proto = uuid.UUID.random().toUUIDProto();
|
|
20
|
+
const now = dt.ZonedDateTime.now();
|
|
21
|
+
|
|
22
|
+
const securityService = new SecurityService();
|
|
23
|
+
|
|
24
|
+
let usd_security = await securityService
|
|
25
|
+
.searchSecurity(now.to_date_proto(), FieldProto.ASSET_CLASS, 'Cash')
|
|
26
|
+
.then((securities) => {
|
|
27
|
+
return securities[0];
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
const security = new SecurityProto();
|
|
31
|
+
security.setObjectClass('Security');
|
|
32
|
+
security.setVersion('0.0.1');
|
|
33
|
+
security.setUuid(id_proto);
|
|
34
|
+
security.setSettlementCurrency(usd_security.proto);
|
|
35
|
+
security.setAsOf(now.to_date_proto());
|
|
36
|
+
security.setAssetClass('FixedIncome');
|
|
37
|
+
security.setCouponFrequency(CouponFrequencyProto.SEMIANNUALLY);
|
|
38
|
+
security.setCouponType(CouponTypeProto.FIXED);
|
|
39
|
+
security.setSecurityType(SecurityTypeProto.BOND_SECURITY);
|
|
40
|
+
|
|
41
|
+
const faceValue = new DecimalValueProto();
|
|
42
|
+
faceValue.setArbitraryPrecisionValue('1000.00');
|
|
43
|
+
security.setFaceValue(faceValue);
|
|
44
|
+
|
|
45
|
+
const couponRate = new DecimalValueProto();
|
|
46
|
+
couponRate.setArbitraryPrecisionValue('0.05');
|
|
47
|
+
security.setCouponRate(couponRate); // Fixed a typo here. It was security.setFaceValue(couponRate);
|
|
48
|
+
|
|
49
|
+
const issueDate = new LocalDateProto();
|
|
50
|
+
issueDate.setYear(2023);
|
|
51
|
+
issueDate.setMonth(1);
|
|
52
|
+
issueDate.setDay(1);
|
|
53
|
+
security.setIssueDate(issueDate);
|
|
54
|
+
security.setDatedDate(issueDate);
|
|
55
|
+
|
|
56
|
+
const maturityDate = new LocalDateProto();
|
|
57
|
+
maturityDate.setYear(2033); //10Y
|
|
58
|
+
maturityDate.setMonth(1);
|
|
59
|
+
maturityDate.setDay(1);
|
|
60
|
+
security.setMaturityDate(maturityDate);
|
|
61
|
+
|
|
62
|
+
security.setIssuerName('US Treasury');
|
|
63
|
+
security.setDescription('Dummy US Treasury 10Y Bond');
|
|
64
|
+
|
|
65
|
+
var validationSummary = await securityService.validateCreateSecurity(security);
|
|
66
|
+
console.log(validationSummary);
|
|
67
|
+
|
|
68
|
+
var createSecurityResponse:CreateSecurityResponseProto = await securityService.createSecurity(security);
|
|
69
|
+
console.log(createSecurityResponse);
|
|
70
|
+
|
|
71
|
+
var searchResults = await securityService.searchSecurity(now.to_date_proto(), FieldProto.ASSET_CLASS, 'Fixed Income');
|
|
72
|
+
console.log('There are %d securities in this response', searchResults.length);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export { testSecurity };
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.PortfolioService = void 0;
|
|
40
|
+
var grpc = require("@grpc/grpc-js");
|
|
41
|
+
var util_1 = require("util");
|
|
42
|
+
var util_2 = require("../../models/utils/util");
|
|
43
|
+
// Model Utils
|
|
44
|
+
var position_filter_pb_1 = require("../../../fintekkers/models/position/position_filter_pb");
|
|
45
|
+
// Requests & Services
|
|
46
|
+
var portfolio_service_grpc_pb_1 = require("../../../fintekkers/services/portfolio-service/portfolio_service_grpc_pb");
|
|
47
|
+
var query_portfolio_request_pb_1 = require("../../../fintekkers/requests/portfolio/query_portfolio_request_pb");
|
|
48
|
+
var create_portfolio_request_pb_1 = require("../../../fintekkers/requests/portfolio/create_portfolio_request_pb");
|
|
49
|
+
var PortfolioService = /** @class */ (function () {
|
|
50
|
+
function PortfolioService() {
|
|
51
|
+
// this.client = new PortfolioClient('api.fintekkers.org:8082', grpc.credentials.createSsl());
|
|
52
|
+
this.client = new portfolio_service_grpc_pb_1.PortfolioClient('localhost:8082', grpc.credentials.createInsecure());
|
|
53
|
+
}
|
|
54
|
+
PortfolioService.prototype.validateCreatePortfolio = function (portfolio) {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
56
|
+
var createRequest, validateCreateOrUpdateAsync, response;
|
|
57
|
+
return __generator(this, function (_a) {
|
|
58
|
+
switch (_a.label) {
|
|
59
|
+
case 0:
|
|
60
|
+
createRequest = new create_portfolio_request_pb_1.CreatePortfolioRequestProto();
|
|
61
|
+
createRequest.setObjectClass('PortfolioRequest');
|
|
62
|
+
createRequest.setVersion('0.0.1');
|
|
63
|
+
createRequest.setCreatePortfolioInput(portfolio);
|
|
64
|
+
validateCreateOrUpdateAsync = (0, util_1.promisify)(this.client.validateCreateOrUpdate.bind(this.client));
|
|
65
|
+
return [4 /*yield*/, validateCreateOrUpdateAsync(createRequest)];
|
|
66
|
+
case 1:
|
|
67
|
+
response = _a.sent();
|
|
68
|
+
return [2 /*return*/, response];
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
};
|
|
73
|
+
PortfolioService.prototype.createPortfolio = function (portfolio) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
75
|
+
var createRequest, createPortfolioAsync, response;
|
|
76
|
+
return __generator(this, function (_a) {
|
|
77
|
+
switch (_a.label) {
|
|
78
|
+
case 0:
|
|
79
|
+
createRequest = new create_portfolio_request_pb_1.CreatePortfolioRequestProto();
|
|
80
|
+
createRequest.setObjectClass('PortfolioRequest');
|
|
81
|
+
createRequest.setVersion('0.0.1');
|
|
82
|
+
createRequest.setCreatePortfolioInput(portfolio);
|
|
83
|
+
createPortfolioAsync = (0, util_1.promisify)(this.client.createOrUpdate.bind(this.client));
|
|
84
|
+
return [4 /*yield*/, createPortfolioAsync(createRequest)];
|
|
85
|
+
case 1:
|
|
86
|
+
response = _a.sent();
|
|
87
|
+
return [2 /*return*/, response];
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
PortfolioService.prototype.searchPortfolio = function (asOf, fieldProto, fieldValue) {
|
|
93
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
94
|
+
function processStreamSynchronously() {
|
|
95
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
96
|
+
var stream2;
|
|
97
|
+
return __generator(this, function (_a) {
|
|
98
|
+
stream2 = tmpClient.search(searchRequest);
|
|
99
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
100
|
+
stream2.on('data', function (response) {
|
|
101
|
+
console.log('Result of the portfolio search call');
|
|
102
|
+
console.log('Response:', response);
|
|
103
|
+
response.getPortfolioResponseList().forEach(function (portfolio) {
|
|
104
|
+
listPortfolios.push(portfolio);
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
stream2.on('end', function () {
|
|
108
|
+
console.log('Stream ended.');
|
|
109
|
+
resolve(listPortfolios);
|
|
110
|
+
});
|
|
111
|
+
stream2.on('error', function (err) {
|
|
112
|
+
console.error('Error in the stream:', err);
|
|
113
|
+
reject(err);
|
|
114
|
+
});
|
|
115
|
+
})];
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
var searchRequest, positionFilter, fieldMapEntry, tmpClient, listPortfolios;
|
|
120
|
+
return __generator(this, function (_a) {
|
|
121
|
+
switch (_a.label) {
|
|
122
|
+
case 0:
|
|
123
|
+
searchRequest = new query_portfolio_request_pb_1.QueryPortfolioRequestProto();
|
|
124
|
+
searchRequest.setObjectClass('PortfolioRequest');
|
|
125
|
+
searchRequest.setVersion('0.0.1');
|
|
126
|
+
searchRequest.setAsOf(asOf);
|
|
127
|
+
positionFilter = new position_filter_pb_1.PositionFilterProto();
|
|
128
|
+
positionFilter.setObjectClass('PositionFilter');
|
|
129
|
+
positionFilter.setVersion('0.0.1');
|
|
130
|
+
fieldMapEntry = (0, util_2.createFieldMapEntry)(fieldProto, fieldValue);
|
|
131
|
+
positionFilter.setFiltersList([fieldMapEntry]);
|
|
132
|
+
searchRequest.setSearchPortfolioInput(positionFilter);
|
|
133
|
+
tmpClient = this.client;
|
|
134
|
+
listPortfolios = [];
|
|
135
|
+
return [4 /*yield*/, processStreamSynchronously()];
|
|
136
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
return PortfolioService;
|
|
142
|
+
}());
|
|
143
|
+
exports.PortfolioService = PortfolioService;
|
|
144
|
+
//# sourceMappingURL=PortfolioService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PortfolioService.js","sourceRoot":"","sources":["PortfolioService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import * as grpc from '@grpc/grpc-js';
|
|
2
|
+
import { promisify } from 'util';
|
|
3
|
+
|
|
4
|
+
// Models
|
|
5
|
+
import { PortfolioProto } from '../../../fintekkers/models/portfolio/portfolio_pb';
|
|
6
|
+
import { createFieldMapEntry } from '../../models/utils/util';
|
|
7
|
+
import { LocalTimestampProto } from '../../../fintekkers/models/util/local_timestamp_pb';
|
|
8
|
+
import { SummaryProto } from '../../../fintekkers/requests/util/errors/summary_pb';
|
|
9
|
+
|
|
10
|
+
// Model Utils
|
|
11
|
+
import { PositionFilterProto } from '../../../fintekkers/models/position/position_filter_pb';
|
|
12
|
+
import { FieldProto } from '../../../fintekkers/models/position/field_pb';
|
|
13
|
+
|
|
14
|
+
// Requests & Services
|
|
15
|
+
import { PortfolioClient } from '../../../fintekkers/services/portfolio-service/portfolio_service_grpc_pb';
|
|
16
|
+
import { QueryPortfolioRequestProto } from '../../../fintekkers/requests/portfolio/query_portfolio_request_pb';
|
|
17
|
+
import { QueryPortfolioResponseProto } from '../../../fintekkers/requests/portfolio/query_portfolio_response_pb';
|
|
18
|
+
import { CreatePortfolioRequestProto } from '../../../fintekkers/requests/portfolio/create_portfolio_request_pb';
|
|
19
|
+
import { CreatePortfolioResponseProto } from '../../../fintekkers/requests/portfolio/create_portfolio_response_pb';
|
|
20
|
+
|
|
21
|
+
class PortfolioService {
|
|
22
|
+
private client: PortfolioClient;
|
|
23
|
+
|
|
24
|
+
constructor() {
|
|
25
|
+
// this.client = new PortfolioClient('api.fintekkers.org:8082', grpc.credentials.createSsl());
|
|
26
|
+
this.client = new PortfolioClient('localhost:8082', grpc.credentials.createInsecure());
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
async validateCreatePortfolio(portfolio: PortfolioProto): Promise<SummaryProto> {
|
|
30
|
+
const createRequest = new CreatePortfolioRequestProto();
|
|
31
|
+
createRequest.setObjectClass('PortfolioRequest');
|
|
32
|
+
createRequest.setVersion('0.0.1');
|
|
33
|
+
createRequest.setCreatePortfolioInput(portfolio);
|
|
34
|
+
|
|
35
|
+
const validateCreateOrUpdateAsync = promisify(this.client.validateCreateOrUpdate.bind(this.client));
|
|
36
|
+
const response = await validateCreateOrUpdateAsync(createRequest);
|
|
37
|
+
return response;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
async createPortfolio(portfolio: PortfolioProto): Promise<CreatePortfolioResponseProto> {
|
|
41
|
+
const createRequest = new CreatePortfolioRequestProto();
|
|
42
|
+
createRequest.setObjectClass('PortfolioRequest');
|
|
43
|
+
createRequest.setVersion('0.0.1');
|
|
44
|
+
createRequest.setCreatePortfolioInput(portfolio);
|
|
45
|
+
|
|
46
|
+
const createPortfolioAsync = promisify(this.client.createOrUpdate.bind(this.client));
|
|
47
|
+
const response = await createPortfolioAsync(createRequest);
|
|
48
|
+
return response;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
async searchPortfolio(asOf: LocalTimestampProto, fieldProto: FieldProto, fieldValue: string): Promise<PortfolioProto[]> {
|
|
52
|
+
const searchRequest = new QueryPortfolioRequestProto();
|
|
53
|
+
searchRequest.setObjectClass('PortfolioRequest');
|
|
54
|
+
searchRequest.setVersion('0.0.1');
|
|
55
|
+
searchRequest.setAsOf(asOf);
|
|
56
|
+
|
|
57
|
+
// Need to improve validation logic, uncommenting this code will cause an error of 2:UNKNOWN
|
|
58
|
+
const positionFilter = new PositionFilterProto();
|
|
59
|
+
positionFilter.setObjectClass('PositionFilter');
|
|
60
|
+
positionFilter.setVersion('0.0.1');
|
|
61
|
+
|
|
62
|
+
const fieldMapEntry = createFieldMapEntry(fieldProto, fieldValue);
|
|
63
|
+
positionFilter.setFiltersList([fieldMapEntry]);
|
|
64
|
+
|
|
65
|
+
searchRequest.setSearchPortfolioInput(positionFilter);
|
|
66
|
+
|
|
67
|
+
const tmpClient = this.client;
|
|
68
|
+
|
|
69
|
+
const listPortfolios: PortfolioProto[] = [];
|
|
70
|
+
|
|
71
|
+
async function processStreamSynchronously(): Promise<PortfolioProto[]> {
|
|
72
|
+
const stream2 = tmpClient.search(searchRequest);
|
|
73
|
+
|
|
74
|
+
return new Promise<PortfolioProto[]>((resolve, reject) => {
|
|
75
|
+
stream2.on('data', (response:QueryPortfolioResponseProto) => {
|
|
76
|
+
console.log('Result of the portfolio search call');
|
|
77
|
+
console.log('Response:', response);
|
|
78
|
+
response.getPortfolioResponseList().forEach((portfolio) => {
|
|
79
|
+
listPortfolios.push(portfolio);
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
stream2.on('end', () => {
|
|
84
|
+
console.log('Stream ended.');
|
|
85
|
+
resolve(listPortfolios);
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
stream2.on('error', (err) => {
|
|
89
|
+
console.error('Error in the stream:', err);
|
|
90
|
+
reject(err);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return await processStreamSynchronously();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export { PortfolioService };
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.PositionService = void 0;
|
|
40
|
+
var grpc = require("@grpc/grpc-js");
|
|
41
|
+
// Requests & Services
|
|
42
|
+
var position_service_grpc_pb_1 = require("../../../fintekkers/services/position-service/position_service_grpc_pb");
|
|
43
|
+
var PositionService = /** @class */ (function () {
|
|
44
|
+
function PositionService() {
|
|
45
|
+
// this.client = new PositionClient('api.fintekkers.org:8082', grpc.credentials.createSsl());
|
|
46
|
+
this.client = new position_service_grpc_pb_1.PositionClient('localhost:8082', grpc.credentials.createInsecure());
|
|
47
|
+
}
|
|
48
|
+
PositionService.prototype.search = function (request) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
50
|
+
function processStreamSynchronously() {
|
|
51
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
52
|
+
var stream2;
|
|
53
|
+
return __generator(this, function (_a) {
|
|
54
|
+
stream2 = tmpClient.search(request);
|
|
55
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
56
|
+
stream2.on('data', function (response) {
|
|
57
|
+
console.log('Result of the position search call');
|
|
58
|
+
console.log('Response:', response);
|
|
59
|
+
response.getPositionsList().forEach(function (position) {
|
|
60
|
+
listPositions.push(position);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
stream2.on('end', function () {
|
|
64
|
+
console.log('Stream ended.');
|
|
65
|
+
resolve(listPositions);
|
|
66
|
+
});
|
|
67
|
+
stream2.on('error', function (err) {
|
|
68
|
+
console.error('Error in the stream:', err);
|
|
69
|
+
reject(err);
|
|
70
|
+
});
|
|
71
|
+
})];
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
var tmpClient, listPositions;
|
|
76
|
+
return __generator(this, function (_a) {
|
|
77
|
+
switch (_a.label) {
|
|
78
|
+
case 0:
|
|
79
|
+
tmpClient = this.client;
|
|
80
|
+
listPositions = [];
|
|
81
|
+
return [4 /*yield*/, processStreamSynchronously()];
|
|
82
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
return PositionService;
|
|
88
|
+
}());
|
|
89
|
+
exports.PositionService = PositionService;
|
|
90
|
+
//# sourceMappingURL=PositionService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PositionService.js","sourceRoot":"","sources":["PositionService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oCAAsC;AAgBtC,sBAAsB;AACtB,mHAAwG;AAUxG;IAGE;QACE,6FAA6F;QAC7F,IAAI,CAAC,MAAM,GAAG,IAAI,yCAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IACxF,CAAC;IAEK,gCAAM,GAAZ,UAAa,OAAiC;;YAI5C,SAAe,0BAA0B;;;;wBACjC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAE1C,sBAAO,IAAI,OAAO,CAAkB,UAAC,OAAO,EAAE,MAAM;gCAClD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,UAAC,QAAmC;oCACrD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;oCAClD,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oCACnC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,UAAC,QAAQ;wCAC3C,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oCAC/B,CAAC,CAAC,CAAC;gCACL,CAAC,CAAC,CAAC;gCAEH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;oCAChB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;oCAC7B,OAAO,CAAC,aAAa,CAAC,CAAC;gCACzB,CAAC,CAAC,CAAC;gCAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,UAAC,GAAG;oCACtB,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;oCAC3C,MAAM,CAAC,GAAG,CAAC,CAAC;gCACd,CAAC,CAAC,CAAC;4BACL,CAAC,CAAC,EAAC;;;aACJ;;;;;wBAzBK,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;wBACxB,aAAa,GAAoB,EAAE,CAAC;wBA0BnC,qBAAM,0BAA0B,EAAE,EAAA;4BAAzC,sBAAO,SAAkC,EAAC;;;;KAC3C;IACH,sBAAC;AAAD,CAAC,AAtCD,IAsCC;AAEQ,0CAAe"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import * as grpc from '@grpc/grpc-js';
|
|
2
|
+
import { promisify } from 'util';
|
|
3
|
+
|
|
4
|
+
// Models
|
|
5
|
+
import { PortfolioProto } from '../../../fintekkers/models/portfolio/portfolio_pb';
|
|
6
|
+
import { createFieldMapEntry } from '../../models/utils/util';
|
|
7
|
+
import { LocalTimestampProto } from '../../../fintekkers/models/util/local_timestamp_pb';
|
|
8
|
+
import { SummaryProto } from '../../../fintekkers/requests/util/errors/summary_pb';
|
|
9
|
+
|
|
10
|
+
import { ZonedDateTime } from '../../../wrappers/models/utils/datetime';
|
|
11
|
+
import { packStringIntoAny } from '../../../wrappers/models/utils/util';
|
|
12
|
+
|
|
13
|
+
// Model Utils
|
|
14
|
+
import { PositionFilterProto } from '../../../fintekkers/models/position/position_filter_pb';
|
|
15
|
+
import { FieldProto } from '../../../fintekkers/models/position/field_pb';
|
|
16
|
+
|
|
17
|
+
// Requests & Services
|
|
18
|
+
import { PositionClient } from '../../../fintekkers/services/position-service/position_service_grpc_pb';
|
|
19
|
+
import { QueryPositionRequestProto } from '../../../fintekkers/requests/position/query_position_request_pb';
|
|
20
|
+
import { QueryPositionResponseProto } from '../../../fintekkers/requests/position/query_position_response_pb';
|
|
21
|
+
|
|
22
|
+
import { Any } from "google-protobuf/google/protobuf/any_pb";
|
|
23
|
+
import { IdentifierProto } from '../../../fintekkers/models/security/identifier/identifier_pb';
|
|
24
|
+
import { FieldMapEntry } from '../../../fintekkers/models/position/position_util_pb';
|
|
25
|
+
import { PositionProto, PositionViewProto } from '../../../fintekkers/models/position/position_pb';
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class PositionService {
|
|
29
|
+
private client: PositionClient;
|
|
30
|
+
|
|
31
|
+
constructor() {
|
|
32
|
+
// this.client = new PositionClient('api.fintekkers.org:8082', grpc.credentials.createSsl());
|
|
33
|
+
this.client = new PositionClient('localhost:8082', grpc.credentials.createInsecure());
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
async search(request:QueryPositionRequestProto) {
|
|
37
|
+
const tmpClient = this.client;
|
|
38
|
+
const listPositions: PositionProto[] = [];
|
|
39
|
+
|
|
40
|
+
async function processStreamSynchronously(): Promise<PositionProto[]> {
|
|
41
|
+
const stream2 = tmpClient.search(request);
|
|
42
|
+
|
|
43
|
+
return new Promise<PositionProto[]>((resolve, reject) => {
|
|
44
|
+
stream2.on('data', (response:QueryPositionResponseProto) => {
|
|
45
|
+
console.log('Result of the position search call');
|
|
46
|
+
console.log('Response:', response);
|
|
47
|
+
response.getPositionsList().forEach((position) => {
|
|
48
|
+
listPositions.push(position);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
stream2.on('end', () => {
|
|
53
|
+
console.log('Stream ended.');
|
|
54
|
+
resolve(listPositions);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
stream2.on('error', (err) => {
|
|
58
|
+
console.error('Error in the stream:', err);
|
|
59
|
+
reject(err);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return await processStreamSynchronously();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export { PositionService };
|