meshtrade 0.0.1__py3-none-any.whl → 0.0.5__py3-none-any.whl

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.

Potentially problematic release.


This version of meshtrade might be problematic. Click here for more details.

Files changed (111) hide show
  1. meshtrade/compliance/__init__.py +0 -0
  2. meshtrade/compliance/client/__init__.py +0 -0
  3. meshtrade/compliance/client/v1/__init__.py +0 -0
  4. meshtrade/compliance/client/v1/client_pb2.py +43 -0
  5. meshtrade/compliance/client/v1/client_pb2.pyi +40 -0
  6. meshtrade/compliance/client/v1/company_pb2.py +49 -0
  7. meshtrade/compliance/client/v1/company_pb2.pyi +85 -0
  8. meshtrade/compliance/client/v1/company_representative_pb2.py +42 -0
  9. meshtrade/compliance/client/v1/company_representative_pb2.pyi +27 -0
  10. meshtrade/compliance/client/v1/company_representative_role_pb2.py +37 -0
  11. meshtrade/compliance/client/v1/company_representative_role_pb2.pyi +26 -0
  12. meshtrade/compliance/client/v1/fund_pb2.py +38 -0
  13. meshtrade/compliance/client/v1/fund_pb2.pyi +21 -0
  14. meshtrade/compliance/client/v1/identification_document_type_pb2.py +37 -0
  15. meshtrade/compliance/client/v1/identification_document_type_pb2.pyi +18 -0
  16. meshtrade/compliance/client/v1/industry_classification_pb2.py +37 -0
  17. meshtrade/compliance/client/v1/industry_classification_pb2.pyi +25 -0
  18. meshtrade/compliance/client/v1/natural_person_connection_type_pb2.py +37 -0
  19. meshtrade/compliance/client/v1/natural_person_connection_type_pb2.pyi +40 -0
  20. meshtrade/compliance/client/v1/natural_person_pb2.py +44 -0
  21. meshtrade/compliance/client/v1/natural_person_pb2.pyi +44 -0
  22. meshtrade/compliance/client/v1/pep_status_pb2.py +37 -0
  23. meshtrade/compliance/client/v1/pep_status_pb2.pyi +16 -0
  24. meshtrade/compliance/client/v1/service_pb2.py +46 -0
  25. meshtrade/compliance/client/v1/service_pb2.pyi +30 -0
  26. meshtrade/compliance/client/v1/source_of_income_and_wealth_pb2.py +37 -0
  27. meshtrade/compliance/client/v1/source_of_income_and_wealth_pb2.pyi +54 -0
  28. meshtrade/compliance/client/v1/tax_residency_pb2.py +37 -0
  29. meshtrade/compliance/client/v1/tax_residency_pb2.pyi +13 -0
  30. meshtrade/compliance/client/v1/trust_pb2.py +38 -0
  31. meshtrade/compliance/client/v1/trust_pb2.pyi +21 -0
  32. meshtrade/compliance/client/v1/verification_status_pb2.py +37 -0
  33. meshtrade/compliance/client/v1/verification_status_pb2.pyi +18 -0
  34. meshtrade/iam/__init__.py +0 -0
  35. meshtrade/iam/group/__init__.py +0 -0
  36. meshtrade/iam/group/v1/__init__.py +0 -0
  37. meshtrade/{account/v1/account_pb2.py → iam/group/v1/group_pb2.py} +7 -7
  38. meshtrade/iam/group/v1/group_pb2.pyi +11 -0
  39. meshtrade/iam/group/v1/service_pb2.py +42 -0
  40. meshtrade/iam/group/v1/service_pb2.pyi +17 -0
  41. meshtrade/iam/role/__init__.py +0 -0
  42. meshtrade/iam/role/v1/__init__.py +0 -0
  43. meshtrade/iam/{v1/role_pb2.py → role/v1/permission_pb2.py} +7 -8
  44. meshtrade/iam/role/v1/role_pb2.py +38 -0
  45. meshtrade/iam/{v1 → role/v1}/role_pb2.pyi +1 -1
  46. meshtrade/iam/role/v1/service_pb2.py +42 -0
  47. meshtrade/iam/role/v1/service_pb2.pyi +17 -0
  48. meshtrade/{iam/v1/permission_pb2.py → issuance_hub/instrument/v1/instrument_pb2.py} +7 -7
  49. meshtrade/issuance_hub/instrument/v1/instrument_pb2.pyi +11 -0
  50. meshtrade/issuance_hub/instrument/v1/service_pb2.py +51 -0
  51. meshtrade/issuance_hub/instrument/v1/service_pb2.pyi +52 -0
  52. meshtrade/ledger/transaction/v1/transaction_action_pb2.py +37 -0
  53. meshtrade/ledger/transaction/v1/transaction_action_pb2.pyi +22 -0
  54. meshtrade/ledger/transaction/v1/transaction_state_pb2.py +37 -0
  55. meshtrade/ledger/transaction/v1/transaction_state_pb2.pyi +24 -0
  56. meshtrade/option/v1/auth_pb2.py +44 -0
  57. meshtrade/option/v1/auth_pb2.pyi +40 -0
  58. meshtrade/option/v1/service_type_pb2.py +38 -0
  59. meshtrade/option/v1/service_type_pb2.pyi +17 -0
  60. meshtrade/trading/__init__.py +0 -0
  61. meshtrade/trading/direct_order/__init__.py +0 -0
  62. meshtrade/trading/direct_order/v1/__init__.py +0 -0
  63. meshtrade/trading/direct_order/v1/direct_order_pb2.py +37 -0
  64. meshtrade/trading/direct_order/v1/direct_order_pb2.pyi +11 -0
  65. meshtrade/trading/direct_order/v1/service_pb2.py +42 -0
  66. meshtrade/trading/direct_order/v1/service_pb2.pyi +19 -0
  67. meshtrade/trading/limit_order/__init__.py +0 -0
  68. meshtrade/trading/limit_order/v1/__init__.py +0 -0
  69. meshtrade/trading/limit_order/v1/limit_order_pb2.py +37 -0
  70. meshtrade/trading/limit_order/v1/limit_order_pb2.pyi +11 -0
  71. meshtrade/trading/limit_order/v1/service_pb2.py +42 -0
  72. meshtrade/trading/limit_order/v1/service_pb2.pyi +19 -0
  73. meshtrade/trading/spot/__init__.py +0 -0
  74. meshtrade/trading/spot/v1/__init__.py +0 -0
  75. meshtrade/trading/spot/v1/service_pb2.py +42 -0
  76. meshtrade/{account → trading/spot}/v1/service_pb2.pyi +7 -7
  77. meshtrade/trading/spot/v1/spot_pb2.py +37 -0
  78. meshtrade/trading/spot/v1/spot_pb2.pyi +11 -0
  79. meshtrade/type/__init__.py +0 -0
  80. meshtrade/type/v1/__init__.py +7 -0
  81. meshtrade/type/v1/address_pb2.py +37 -0
  82. meshtrade/type/v1/address_pb2.pyi +23 -0
  83. meshtrade/type/v1/amount.py +84 -0
  84. meshtrade/type/v1/amount_pb2.py +39 -0
  85. meshtrade/type/v1/amount_pb2.pyi +16 -0
  86. meshtrade/type/v1/contact_details_pb2.py +37 -0
  87. meshtrade/type/v1/contact_details_pb2.pyi +27 -0
  88. meshtrade/type/v1/decimal_built_in_conversions.py +29 -0
  89. meshtrade/type/v1/decimal_pb2.py +37 -0
  90. meshtrade/type/v1/decimal_pb2.pyi +11 -0
  91. meshtrade/type/v1/ledger.py +26 -0
  92. meshtrade/type/v1/ledger_pb2.py +37 -0
  93. meshtrade/type/v1/ledger_pb2.pyi +24 -0
  94. meshtrade/type/v1/token_pb2.py +38 -0
  95. meshtrade/type/v1/token_pb2.pyi +16 -0
  96. meshtrade/wallet/__init__.py +0 -0
  97. meshtrade/wallet/account/v1/__init__.py +0 -0
  98. meshtrade/wallet/account/v1/account_pb2.py +37 -0
  99. meshtrade/wallet/account/v1/service_pb2.py +74 -0
  100. meshtrade/wallet/account/v1/service_pb2.pyi +64 -0
  101. {meshtrade-0.0.1.dist-info → meshtrade-0.0.5.dist-info}/METADATA +9 -3
  102. meshtrade-0.0.5.dist-info/RECORD +108 -0
  103. meshtrade/account/v1/__init__.py +0 -7
  104. meshtrade/account/v1/service_pb2.py +0 -42
  105. meshtrade/iam/v1/__init__.py +0 -11
  106. meshtrade-0.0.1.dist-info/RECORD +0 -16
  107. /meshtrade/iam/{v1 → role/v1}/permission_pb2.pyi +0 -0
  108. /meshtrade/{account → wallet/account}/v1/account_pb2.pyi +0 -0
  109. {meshtrade-0.0.1.dist-info → meshtrade-0.0.5.dist-info}/WHEEL +0 -0
  110. {meshtrade-0.0.1.dist-info → meshtrade-0.0.5.dist-info}/licenses/LICENSE +0 -0
  111. {meshtrade-0.0.1.dist-info → meshtrade-0.0.5.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,11 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Optional as _Optional
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class DirectOrder(_message.Message):
8
+ __slots__ = ("number",)
9
+ NUMBER_FIELD_NUMBER: _ClassVar[int]
10
+ number: str
11
+ def __init__(self, number: _Optional[str] = ...) -> None: ...
@@ -0,0 +1,42 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/trading/direct_order/v1/service.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/trading/direct_order/v1/service.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from meshtrade.trading.direct_order.v1 import direct_order_pb2 as meshtrade_dot_trading_dot_direct__order_dot_v1_dot_direct__order__pb2
26
+
27
+
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n/meshtrade/trading/direct_order/v1/service.proto\x12!meshtrade.trading.direct_order.v1\x1a\x34meshtrade/trading/direct_order/v1/direct_order.proto\"/\n\x15GetDirectOrderRequest\x12\x16\n\x06number\x18\x01 \x01(\tR\x06number\"j\n\x16GetDirectOrderResponse\x12P\n\x0b\x64irectorder\x18\x01 \x01(\x0b\x32..meshtrade.trading.direct_order.v1.DirectOrderR\x0b\x64irectorder2\x90\x01\n\x12\x44irectOrderService\x12z\n\x03Get\x12\x38.meshtrade.trading.direct_order.v1.GetDirectOrderRequest\x1a\x39.meshtrade.trading.direct_order.v1.GetDirectOrderResponseBCZAgithub.com/meshtrade/api/go/trading/direct_order/v1;directorderv1b\x06proto3')
29
+
30
+ _globals = globals()
31
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
32
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.trading.direct_order.v1.service_pb2', _globals)
33
+ if not _descriptor._USE_C_DESCRIPTORS:
34
+ _globals['DESCRIPTOR']._loaded_options = None
35
+ _globals['DESCRIPTOR']._serialized_options = b'ZAgithub.com/meshtrade/api/go/trading/direct_order/v1;directorderv1'
36
+ _globals['_GETDIRECTORDERREQUEST']._serialized_start=140
37
+ _globals['_GETDIRECTORDERREQUEST']._serialized_end=187
38
+ _globals['_GETDIRECTORDERRESPONSE']._serialized_start=189
39
+ _globals['_GETDIRECTORDERRESPONSE']._serialized_end=295
40
+ _globals['_DIRECTORDERSERVICE']._serialized_start=298
41
+ _globals['_DIRECTORDERSERVICE']._serialized_end=442
42
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,19 @@
1
+ from meshtrade.trading.direct_order.v1 import direct_order_pb2 as _direct_order_pb2
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from collections.abc import Mapping as _Mapping
5
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
6
+
7
+ DESCRIPTOR: _descriptor.FileDescriptor
8
+
9
+ class GetDirectOrderRequest(_message.Message):
10
+ __slots__ = ("number",)
11
+ NUMBER_FIELD_NUMBER: _ClassVar[int]
12
+ number: str
13
+ def __init__(self, number: _Optional[str] = ...) -> None: ...
14
+
15
+ class GetDirectOrderResponse(_message.Message):
16
+ __slots__ = ("directorder",)
17
+ DIRECTORDER_FIELD_NUMBER: _ClassVar[int]
18
+ directorder: _direct_order_pb2.DirectOrder
19
+ def __init__(self, directorder: _Optional[_Union[_direct_order_pb2.DirectOrder, _Mapping]] = ...) -> None: ...
File without changes
File without changes
@@ -0,0 +1,37 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/trading/limit_order/v1/limit_order.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/trading/limit_order/v1/limit_order.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2meshtrade/trading/limit_order/v1/limit_order.proto\x12 meshtrade.trading.limit_order.v1\"$\n\nLimitOrder\x12\x16\n\x06number\x18\x01 \x01(\tR\x06numberBAZ?github.com/meshtrade/api/go/trading/limit_order/v1;limitorderv1b\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.trading.limit_order.v1.limit_order_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'Z?github.com/meshtrade/api/go/trading/limit_order/v1;limitorderv1'
35
+ _globals['_LIMITORDER']._serialized_start=88
36
+ _globals['_LIMITORDER']._serialized_end=124
37
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,11 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Optional as _Optional
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class LimitOrder(_message.Message):
8
+ __slots__ = ("number",)
9
+ NUMBER_FIELD_NUMBER: _ClassVar[int]
10
+ number: str
11
+ def __init__(self, number: _Optional[str] = ...) -> None: ...
@@ -0,0 +1,42 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/trading/limit_order/v1/service.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/trading/limit_order/v1/service.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from meshtrade.trading.limit_order.v1 import limit_order_pb2 as meshtrade_dot_trading_dot_limit__order_dot_v1_dot_limit__order__pb2
26
+
27
+
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.meshtrade/trading/limit_order/v1/service.proto\x12 meshtrade.trading.limit_order.v1\x1a\x32meshtrade/trading/limit_order/v1/limit_order.proto\".\n\x14GetLimitOrderRequest\x12\x16\n\x06number\x18\x01 \x01(\tR\x06number\"e\n\x15GetLimitOrderResponse\x12L\n\nlimitorder\x18\x01 \x01(\x0b\x32,.meshtrade.trading.limit_order.v1.LimitOrderR\nlimitorder2\x8b\x01\n\x11LimitOrderService\x12v\n\x03Get\x12\x36.meshtrade.trading.limit_order.v1.GetLimitOrderRequest\x1a\x37.meshtrade.trading.limit_order.v1.GetLimitOrderResponseBAZ?github.com/meshtrade/api/go/trading/limit_order/v1;limitorderv1b\x06proto3')
29
+
30
+ _globals = globals()
31
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
32
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.trading.limit_order.v1.service_pb2', _globals)
33
+ if not _descriptor._USE_C_DESCRIPTORS:
34
+ _globals['DESCRIPTOR']._loaded_options = None
35
+ _globals['DESCRIPTOR']._serialized_options = b'Z?github.com/meshtrade/api/go/trading/limit_order/v1;limitorderv1'
36
+ _globals['_GETLIMITORDERREQUEST']._serialized_start=136
37
+ _globals['_GETLIMITORDERREQUEST']._serialized_end=182
38
+ _globals['_GETLIMITORDERRESPONSE']._serialized_start=184
39
+ _globals['_GETLIMITORDERRESPONSE']._serialized_end=285
40
+ _globals['_LIMITORDERSERVICE']._serialized_start=288
41
+ _globals['_LIMITORDERSERVICE']._serialized_end=427
42
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,19 @@
1
+ from meshtrade.trading.limit_order.v1 import limit_order_pb2 as _limit_order_pb2
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from collections.abc import Mapping as _Mapping
5
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
6
+
7
+ DESCRIPTOR: _descriptor.FileDescriptor
8
+
9
+ class GetLimitOrderRequest(_message.Message):
10
+ __slots__ = ("number",)
11
+ NUMBER_FIELD_NUMBER: _ClassVar[int]
12
+ number: str
13
+ def __init__(self, number: _Optional[str] = ...) -> None: ...
14
+
15
+ class GetLimitOrderResponse(_message.Message):
16
+ __slots__ = ("limitorder",)
17
+ LIMITORDER_FIELD_NUMBER: _ClassVar[int]
18
+ limitorder: _limit_order_pb2.LimitOrder
19
+ def __init__(self, limitorder: _Optional[_Union[_limit_order_pb2.LimitOrder, _Mapping]] = ...) -> None: ...
File without changes
File without changes
@@ -0,0 +1,42 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/trading/spot/v1/service.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/trading/spot/v1/service.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from meshtrade.trading.spot.v1 import spot_pb2 as meshtrade_dot_trading_dot_spot_dot_v1_dot_spot__pb2
26
+
27
+
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'meshtrade/trading/spot/v1/service.proto\x12\x19meshtrade.trading.spot.v1\x1a$meshtrade/trading/spot/v1/spot.proto\"(\n\x0eGetSpotRequest\x12\x16\n\x06number\x18\x01 \x01(\tR\x06number\"F\n\x0fGetSpotResponse\x12\x33\n\x04spot\x18\x01 \x01(\x0b\x32\x1f.meshtrade.trading.spot.v1.SpotR\x04spot2k\n\x0bSpotService\x12\\\n\x03Get\x12).meshtrade.trading.spot.v1.GetSpotRequest\x1a*.meshtrade.trading.spot.v1.GetSpotResponseB4Z2github.com/meshtrade/api/go/trading/spot/v1;spotv1b\x06proto3')
29
+
30
+ _globals = globals()
31
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
32
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.trading.spot.v1.service_pb2', _globals)
33
+ if not _descriptor._USE_C_DESCRIPTORS:
34
+ _globals['DESCRIPTOR']._loaded_options = None
35
+ _globals['DESCRIPTOR']._serialized_options = b'Z2github.com/meshtrade/api/go/trading/spot/v1;spotv1'
36
+ _globals['_GETSPOTREQUEST']._serialized_start=108
37
+ _globals['_GETSPOTREQUEST']._serialized_end=148
38
+ _globals['_GETSPOTRESPONSE']._serialized_start=150
39
+ _globals['_GETSPOTRESPONSE']._serialized_end=220
40
+ _globals['_SPOTSERVICE']._serialized_start=222
41
+ _globals['_SPOTSERVICE']._serialized_end=329
42
+ # @@protoc_insertion_point(module_scope)
@@ -1,4 +1,4 @@
1
- from meshtrade.account.v1 import account_pb2 as _account_pb2
1
+ from meshtrade.trading.spot.v1 import spot_pb2 as _spot_pb2
2
2
  from google.protobuf import descriptor as _descriptor
3
3
  from google.protobuf import message as _message
4
4
  from collections.abc import Mapping as _Mapping
@@ -6,14 +6,14 @@ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
6
6
 
7
7
  DESCRIPTOR: _descriptor.FileDescriptor
8
8
 
9
- class GetRequest(_message.Message):
9
+ class GetSpotRequest(_message.Message):
10
10
  __slots__ = ("number",)
11
11
  NUMBER_FIELD_NUMBER: _ClassVar[int]
12
12
  number: str
13
13
  def __init__(self, number: _Optional[str] = ...) -> None: ...
14
14
 
15
- class GetResponse(_message.Message):
16
- __slots__ = ("account",)
17
- ACCOUNT_FIELD_NUMBER: _ClassVar[int]
18
- account: _account_pb2.Account
19
- def __init__(self, account: _Optional[_Union[_account_pb2.Account, _Mapping]] = ...) -> None: ...
15
+ class GetSpotResponse(_message.Message):
16
+ __slots__ = ("spot",)
17
+ SPOT_FIELD_NUMBER: _ClassVar[int]
18
+ spot: _spot_pb2.Spot
19
+ def __init__(self, spot: _Optional[_Union[_spot_pb2.Spot, _Mapping]] = ...) -> None: ...
@@ -0,0 +1,37 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/trading/spot/v1/spot.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/trading/spot/v1/spot.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$meshtrade/trading/spot/v1/spot.proto\x12\x19meshtrade.trading.spot.v1\"\x1e\n\x04Spot\x12\x16\n\x06number\x18\x01 \x01(\tR\x06numberB4Z2github.com/meshtrade/api/go/trading/spot/v1;spotv1b\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.trading.spot.v1.spot_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'Z2github.com/meshtrade/api/go/trading/spot/v1;spotv1'
35
+ _globals['_SPOT']._serialized_start=67
36
+ _globals['_SPOT']._serialized_end=97
37
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,11 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Optional as _Optional
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class Spot(_message.Message):
8
+ __slots__ = ("number",)
9
+ NUMBER_FIELD_NUMBER: _ClassVar[int]
10
+ number: str
11
+ def __init__(self, number: _Optional[str] = ...) -> None: ...
File without changes
@@ -0,0 +1,7 @@
1
+ from .amount import new_amount
2
+ from .decimal_built_in_conversions import built_in_to_decimal, decimal_to_built_in
3
+ from .decimal_pb2 import Decimal
4
+ from .ledger_pb2 import Ledger
5
+ from .ledger import get_ledger_no_decimal_places
6
+ from .token_pb2 import Token
7
+ from .amount_pb2 import Amount
@@ -0,0 +1,37 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/type/v1/address.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/type/v1/address.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmeshtrade/type/v1/address.proto\x12\x11meshtrade.type.v1\"\xba\x01\n\x07\x41\x64\x64ress\x12#\n\raddress_lines\x18\x01 \x03(\tR\x0c\x61\x64\x64ressLines\x12\x16\n\x06suburb\x18\x02 \x01(\tR\x06suburb\x12\x12\n\x04\x63ity\x18\x03 \x01(\tR\x04\x63ity\x12\x1a\n\x08province\x18\x04 \x01(\tR\x08province\x12!\n\x0c\x63ountry_code\x18\x05 \x01(\tR\x0b\x63ountryCode\x12\x1f\n\x0bpostal_code\x18\x06 \x01(\tR\npostalCodeB,Z*github.com/meshtrade/api/go/type/v1;typev1b\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.type.v1.address_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'Z*github.com/meshtrade/api/go/type/v1;typev1'
35
+ _globals['_ADDRESS']._serialized_start=55
36
+ _globals['_ADDRESS']._serialized_end=241
37
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,23 @@
1
+ from google.protobuf.internal import containers as _containers
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from collections.abc import Iterable as _Iterable
5
+ from typing import ClassVar as _ClassVar, Optional as _Optional
6
+
7
+ DESCRIPTOR: _descriptor.FileDescriptor
8
+
9
+ class Address(_message.Message):
10
+ __slots__ = ("address_lines", "suburb", "city", "province", "country_code", "postal_code")
11
+ ADDRESS_LINES_FIELD_NUMBER: _ClassVar[int]
12
+ SUBURB_FIELD_NUMBER: _ClassVar[int]
13
+ CITY_FIELD_NUMBER: _ClassVar[int]
14
+ PROVINCE_FIELD_NUMBER: _ClassVar[int]
15
+ COUNTRY_CODE_FIELD_NUMBER: _ClassVar[int]
16
+ POSTAL_CODE_FIELD_NUMBER: _ClassVar[int]
17
+ address_lines: _containers.RepeatedScalarFieldContainer[str]
18
+ suburb: str
19
+ city: str
20
+ province: str
21
+ country_code: str
22
+ postal_code: str
23
+ def __init__(self, address_lines: _Optional[_Iterable[str]] = ..., suburb: _Optional[str] = ..., city: _Optional[str] = ..., province: _Optional[str] = ..., country_code: _Optional[str] = ..., postal_code: _Optional[str] = ...) -> None: ...
@@ -0,0 +1,84 @@
1
+ """
2
+ This module provides a factory function for creating Amount protobuf messages.
3
+ """
4
+
5
+ from decimal import ROUND_DOWN, Decimal
6
+
7
+ from .amount_pb2 import Amount
8
+ from .decimal_built_in_conversions import built_in_to_decimal, decimal_to_built_in
9
+ from .ledger import get_ledger_no_decimal_places
10
+ from .token_pb2 import Token
11
+
12
+
13
+ def new_amount(
14
+ value: Decimal,
15
+ token: Token,
16
+ precision_loss_tolerance: Decimal = Decimal("0.00000001")
17
+ ) -> Amount:
18
+ """Creates a new Amount, ensuring the value conforms to system-wide limits.
19
+
20
+ This function is the safe constructor for creating Amount protobuf messages.
21
+ While the underlying conversion from a Python `Decimal` to the protobuf's
22
+ `string` field is lossless, this function provides critical validation
23
+ to ensure the value adheres to constraints imposed by other downstream
24
+ systems (e.g., databases, other microservices with fixed-precision types).
25
+
26
+ Its primary operations are:
27
+
28
+ 1. **Validation:** It performs a serialization round-trip
29
+ (Python Decimal -> Protobuf Decimal -> Python Decimal) to simulate
30
+ how the value is stored and retrieved across the system. It then asserts
31
+ the value remains unchanged, guaranteeing it doesn't exceed the
32
+ precision limits of any consuming service.
33
+
34
+ 2. **Truncation:** It truncates the validated value to the exact number of
35
+ decimal places defined for the token's ledger, always rounding down to
36
+ prevent any inflation of values.
37
+
38
+ 3. **Construction:** It constructs and returns the final `Amount` message.
39
+
40
+ Args:
41
+ value: The numerical value of the amount as a Python `Decimal` object.
42
+ token: The `Token` protobuf message that defines the asset type
43
+ and its associated ledger.
44
+ precision_loss_tolerance: The maximum acceptable difference after the
45
+ validation round-trip. Since the string-based conversion is
46
+ lossless, any difference indicates a failure to conform to an
47
+ external system's parsing rules. Defaults to a small tolerance
48
+ for robustness.
49
+
50
+ Returns:
51
+ An `Amount` protobuf message containing the ledger-compliant, truncated
52
+ value and the specified token.
53
+
54
+ Raises:
55
+ AssertionError: If the input `value` changes during the validation
56
+ round-trip, indicating it exceeds the system's
57
+ representational limits and would be corrupted
58
+ downstream.
59
+ """
60
+
61
+ # Perform a serialization round-trip to validate the value against
62
+ # system-wide architectural constraints. This is a lossless operation
63
+ # in isolation, so any change reveals an incompatibility.
64
+ value_after_roundtrip = decimal_to_built_in(built_in_to_decimal(value))
65
+
66
+ # Confirm the value is perfectly representable within the system's limits.
67
+ # If the original value had too much precision for a downstream service to
68
+ # parse, it would change during the round-trip, and this would fail.
69
+ assert abs(value_after_roundtrip - value) \
70
+ <= precision_loss_tolerance, \
71
+ "value exceeds system's precision limits and would be corrupted"
72
+
73
+ # Truncate the validated value to the number of decimal places specified by the
74
+ # token's ledger. ROUND_DOWN ensures the value is never inflated.
75
+ truncated_value = value_after_roundtrip.quantize(
76
+ Decimal(10) ** -get_ledger_no_decimal_places(token.ledger),
77
+ rounding=ROUND_DOWN,
78
+ )
79
+
80
+ # Construct and return the final Amount protobuf message using the sanitized value.
81
+ return Amount(
82
+ token=token,
83
+ value=built_in_to_decimal(truncated_value),
84
+ )
@@ -0,0 +1,39 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/type/v1/amount.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/type/v1/amount.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from meshtrade.type.v1 import decimal_pb2 as meshtrade_dot_type_dot_v1_dot_decimal__pb2
26
+ from meshtrade.type.v1 import token_pb2 as meshtrade_dot_type_dot_v1_dot_token__pb2
27
+
28
+
29
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1emeshtrade/type/v1/amount.proto\x12\x11meshtrade.type.v1\x1a\x1fmeshtrade/type/v1/decimal.proto\x1a\x1dmeshtrade/type/v1/token.proto\"j\n\x06\x41mount\x12.\n\x05token\x18\x01 \x01(\x0b\x32\x18.meshtrade.type.v1.TokenR\x05token\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.meshtrade.type.v1.DecimalR\x05valueB,Z*github.com/meshtrade/api/go/type/v1;typev1b\x06proto3')
30
+
31
+ _globals = globals()
32
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
33
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.type.v1.amount_pb2', _globals)
34
+ if not _descriptor._USE_C_DESCRIPTORS:
35
+ _globals['DESCRIPTOR']._loaded_options = None
36
+ _globals['DESCRIPTOR']._serialized_options = b'Z*github.com/meshtrade/api/go/type/v1;typev1'
37
+ _globals['_AMOUNT']._serialized_start=117
38
+ _globals['_AMOUNT']._serialized_end=223
39
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,16 @@
1
+ from meshtrade.type.v1 import decimal_pb2 as _decimal_pb2
2
+ from meshtrade.type.v1 import token_pb2 as _token_pb2
3
+ from google.protobuf import descriptor as _descriptor
4
+ from google.protobuf import message as _message
5
+ from collections.abc import Mapping as _Mapping
6
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
7
+
8
+ DESCRIPTOR: _descriptor.FileDescriptor
9
+
10
+ class Amount(_message.Message):
11
+ __slots__ = ("token", "value")
12
+ TOKEN_FIELD_NUMBER: _ClassVar[int]
13
+ VALUE_FIELD_NUMBER: _ClassVar[int]
14
+ token: _token_pb2.Token
15
+ value: _decimal_pb2.Decimal
16
+ def __init__(self, token: _Optional[_Union[_token_pb2.Token, _Mapping]] = ..., value: _Optional[_Union[_decimal_pb2.Decimal, _Mapping]] = ...) -> None: ...
@@ -0,0 +1,37 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: meshtrade/type/v1/contact_details.proto
5
+ # Protobuf Python Version: 6.31.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 31,
16
+ 1,
17
+ '',
18
+ 'meshtrade/type/v1/contact_details.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'meshtrade/type/v1/contact_details.proto\x12\x11meshtrade.type.v1\"\xa4\x02\n\x0e\x43ontactDetails\x12#\n\remail_address\x18\x01 \x01(\tR\x0c\x65mailAddress\x12!\n\x0cphone_number\x18\x03 \x01(\tR\x0bphoneNumber\x12#\n\rmobile_number\x18\x05 \x01(\tR\x0cmobileNumber\x12\x18\n\x07website\x18\x06 \x01(\tR\x07website\x12\x1a\n\x08linkedin\x18\x07 \x01(\tR\x08linkedin\x12\x1a\n\x08\x66\x61\x63\x65\x62ook\x18\x08 \x01(\tR\x08\x66\x61\x63\x65\x62ook\x12\x1c\n\tinstagram\x18\t \x01(\tR\tinstagram\x12\x1b\n\tx_twitter\x18\n \x01(\tR\x08xTwitter\x12\x18\n\x07youtube\x18\x0b \x01(\tR\x07youtubeB,Z*github.com/meshtrade/api/go/type/v1;typev1b\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtrade.type.v1.contact_details_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'Z*github.com/meshtrade/api/go/type/v1;typev1'
35
+ _globals['_CONTACTDETAILS']._serialized_start=63
36
+ _globals['_CONTACTDETAILS']._serialized_end=355
37
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,27 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Optional as _Optional
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class ContactDetails(_message.Message):
8
+ __slots__ = ("email_address", "phone_number", "mobile_number", "website", "linkedin", "facebook", "instagram", "x_twitter", "youtube")
9
+ EMAIL_ADDRESS_FIELD_NUMBER: _ClassVar[int]
10
+ PHONE_NUMBER_FIELD_NUMBER: _ClassVar[int]
11
+ MOBILE_NUMBER_FIELD_NUMBER: _ClassVar[int]
12
+ WEBSITE_FIELD_NUMBER: _ClassVar[int]
13
+ LINKEDIN_FIELD_NUMBER: _ClassVar[int]
14
+ FACEBOOK_FIELD_NUMBER: _ClassVar[int]
15
+ INSTAGRAM_FIELD_NUMBER: _ClassVar[int]
16
+ X_TWITTER_FIELD_NUMBER: _ClassVar[int]
17
+ YOUTUBE_FIELD_NUMBER: _ClassVar[int]
18
+ email_address: str
19
+ phone_number: str
20
+ mobile_number: str
21
+ website: str
22
+ linkedin: str
23
+ facebook: str
24
+ instagram: str
25
+ x_twitter: str
26
+ youtube: str
27
+ def __init__(self, email_address: _Optional[str] = ..., phone_number: _Optional[str] = ..., mobile_number: _Optional[str] = ..., website: _Optional[str] = ..., linkedin: _Optional[str] = ..., facebook: _Optional[str] = ..., instagram: _Optional[str] = ..., x_twitter: _Optional[str] = ..., youtube: _Optional[str] = ...) -> None: ...
@@ -0,0 +1,29 @@
1
+ import decimal
2
+
3
+ from .decimal_pb2 import Decimal
4
+
5
+
6
+ def built_in_to_decimal(decimal_value: decimal.Decimal) -> Decimal:
7
+ """
8
+ Converts an instance of the built-in decimal.Decimal type to an instance of the
9
+ financial Decimal protobuf type.
10
+
11
+ :param decimal_value: The decimal.Decimal object to convert.
12
+ :return: The converted financial Decimal protobuf object.
13
+ """
14
+
15
+ # Contruct and return resultant decimal object
16
+ return Decimal(
17
+ value=str(decimal_value),
18
+ )
19
+
20
+
21
+ def decimal_to_built_in(decimal_value: Decimal) -> decimal.Decimal:
22
+ """
23
+ Converts an instance of the financial Decimal protobuf type to an instance of the
24
+ built-in decimal.Decimal type.
25
+
26
+ :param decimal_value: The decimal_pb2.Decimal object to convert.
27
+ :return: The converted decimal.Decimal object.
28
+ """
29
+ return decimal.Decimal( decimal_value.value if decimal_value.value != "" else "0" )