Skip to content

Commit 1ecc14b

Browse files
authored
Merge pull request #49 from synonymdev/feat/upsert-tags
Add upsert tags and get all tags metadata
2 parents 3cd496c + 8ad4c22 commit 1ecc14b

File tree

24 files changed

+1177
-12
lines changed

24 files changed

+1177
-12
lines changed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "bitkitcore"
3-
version = "0.1.23"
3+
version = "0.1.24"
44
edition = "2021"
55

66
[lib]

Package.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import PackageDescription
55

6-
let tag = "v0.1.23"
7-
let checksum = "bc38b62f93ce7b3c7acc22d3a917e2dd343c241c061cf2d7b1b7c779545a1e37"
6+
let tag = "v0.1.24"
7+
let checksum = "34cfce19ece822af081969c271862491929ff530c3e23e935e69c68112cc7d09"
88
let url = "https://github.com/synonymdev/bitkit-core/releases/download/\(tag)/BitkitCore.xcframework.zip"
99

1010
let package = Package(

bindings/android/gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ android.useAndroidX=true
33
android.enableJetifier=true
44
kotlin.code.style=official
55
group=com.synonym
6-
version=0.1.23
6+
version=0.1.24
5.33 MB
Binary file not shown.
Binary file not shown.
3.29 MB
Binary file not shown.
3.67 MB
Binary file not shown.

bindings/android/lib/src/main/kotlin/com/synonym/bitkitcore/bitkitcore.android.kt

Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1103,6 +1103,10 @@ internal interface UniffiForeignFutureCompleteVoid: com.sun.jna.Callback {
11031103

11041104

11051105

1106+
1107+
1108+
1109+
11061110

11071111

11081112

@@ -1213,6 +1217,9 @@ internal object IntegrityCheckingUniffiLib : Library {
12131217
if (uniffi_bitkitcore_checksum_func_get_all_closed_channels() != 16828.toShort()) {
12141218
throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
12151219
}
1220+
if (uniffi_bitkitcore_checksum_func_get_all_tag_metadata() != 23646.toShort()) {
1221+
throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
1222+
}
12161223
if (uniffi_bitkitcore_checksum_func_get_all_unique_tags() != 25431.toShort()) {
12171224
throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
12181225
}
@@ -1366,6 +1373,9 @@ internal object IntegrityCheckingUniffiLib : Library {
13661373
if (uniffi_bitkitcore_checksum_func_upsert_orders() != 45856.toShort()) {
13671374
throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
13681375
}
1376+
if (uniffi_bitkitcore_checksum_func_upsert_tags() != 47513.toShort()) {
1377+
throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
1378+
}
13691379
if (uniffi_bitkitcore_checksum_func_validate_bitcoin_address() != 56003.toShort()) {
13701380
throw RuntimeException("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
13711381
}
@@ -1448,6 +1458,9 @@ internal object IntegrityCheckingUniffiLib : Library {
14481458
external fun uniffi_bitkitcore_checksum_func_get_all_closed_channels(
14491459
): Short
14501460
@JvmStatic
1461+
external fun uniffi_bitkitcore_checksum_func_get_all_tag_metadata(
1462+
): Short
1463+
@JvmStatic
14511464
external fun uniffi_bitkitcore_checksum_func_get_all_unique_tags(
14521465
): Short
14531466
@JvmStatic
@@ -1601,6 +1614,9 @@ internal object IntegrityCheckingUniffiLib : Library {
16011614
external fun uniffi_bitkitcore_checksum_func_upsert_orders(
16021615
): Short
16031616
@JvmStatic
1617+
external fun uniffi_bitkitcore_checksum_func_upsert_tags(
1618+
): Short
1619+
@JvmStatic
16041620
external fun uniffi_bitkitcore_checksum_func_validate_bitcoin_address(
16051621
): Short
16061622
@JvmStatic
@@ -1765,6 +1781,10 @@ internal object UniffiLib : Library {
17651781
uniffiCallStatus: UniffiRustCallStatus,
17661782
): RustBufferByValue
17671783
@JvmStatic
1784+
external fun uniffi_bitkitcore_fn_func_get_all_tag_metadata(
1785+
uniffiCallStatus: UniffiRustCallStatus,
1786+
): RustBufferByValue
1787+
@JvmStatic
17681788
external fun uniffi_bitkitcore_fn_func_get_all_unique_tags(
17691789
uniffiCallStatus: UniffiRustCallStatus,
17701790
): RustBufferByValue
@@ -2100,6 +2120,11 @@ internal object UniffiLib : Library {
21002120
`orders`: RustBufferByValue,
21012121
): Long
21022122
@JvmStatic
2123+
external fun uniffi_bitkitcore_fn_func_upsert_tags(
2124+
`activityTags`: RustBufferByValue,
2125+
uniffiCallStatus: UniffiRustCallStatus,
2126+
): Unit
2127+
@JvmStatic
21032128
external fun uniffi_bitkitcore_fn_func_validate_bitcoin_address(
21042129
`address`: RustBufferByValue,
21052130
uniffiCallStatus: UniffiRustCallStatus,
@@ -2662,6 +2687,65 @@ public object FfiConverterTypeAccountUtxo: FfiConverterRustBuffer<AccountUtxo> {
26622687

26632688

26642689

2690+
public object FfiConverterTypeActivityTags: FfiConverterRustBuffer<ActivityTags> {
2691+
override fun read(buf: ByteBuffer): ActivityTags {
2692+
return ActivityTags(
2693+
FfiConverterString.read(buf),
2694+
FfiConverterSequenceString.read(buf),
2695+
)
2696+
}
2697+
2698+
override fun allocationSize(value: ActivityTags): ULong = (
2699+
FfiConverterString.allocationSize(value.`activityId`) +
2700+
FfiConverterSequenceString.allocationSize(value.`tags`)
2701+
)
2702+
2703+
override fun write(value: ActivityTags, buf: ByteBuffer) {
2704+
FfiConverterString.write(value.`activityId`, buf)
2705+
FfiConverterSequenceString.write(value.`tags`, buf)
2706+
}
2707+
}
2708+
2709+
2710+
2711+
2712+
public object FfiConverterTypeActivityTagsMetadata: FfiConverterRustBuffer<ActivityTagsMetadata> {
2713+
override fun read(buf: ByteBuffer): ActivityTagsMetadata {
2714+
return ActivityTagsMetadata(
2715+
FfiConverterString.read(buf),
2716+
FfiConverterOptionalString.read(buf),
2717+
FfiConverterOptionalString.read(buf),
2718+
FfiConverterString.read(buf),
2719+
FfiConverterBoolean.read(buf),
2720+
FfiConverterSequenceString.read(buf),
2721+
FfiConverterULong.read(buf),
2722+
)
2723+
}
2724+
2725+
override fun allocationSize(value: ActivityTagsMetadata): ULong = (
2726+
FfiConverterString.allocationSize(value.`id`) +
2727+
FfiConverterOptionalString.allocationSize(value.`paymentHash`) +
2728+
FfiConverterOptionalString.allocationSize(value.`txId`) +
2729+
FfiConverterString.allocationSize(value.`address`) +
2730+
FfiConverterBoolean.allocationSize(value.`isReceive`) +
2731+
FfiConverterSequenceString.allocationSize(value.`tags`) +
2732+
FfiConverterULong.allocationSize(value.`createdAt`)
2733+
)
2734+
2735+
override fun write(value: ActivityTagsMetadata, buf: ByteBuffer) {
2736+
FfiConverterString.write(value.`id`, buf)
2737+
FfiConverterOptionalString.write(value.`paymentHash`, buf)
2738+
FfiConverterOptionalString.write(value.`txId`, buf)
2739+
FfiConverterString.write(value.`address`, buf)
2740+
FfiConverterBoolean.write(value.`isReceive`, buf)
2741+
FfiConverterSequenceString.write(value.`tags`, buf)
2742+
FfiConverterULong.write(value.`createdAt`, buf)
2743+
}
2744+
}
2745+
2746+
2747+
2748+
26652749
public object FfiConverterTypeAddressInfo: FfiConverterRustBuffer<AddressInfo> {
26662750
override fun read(buf: ByteBuffer): AddressInfo {
26672751
return AddressInfo(
@@ -8743,6 +8827,56 @@ public object FfiConverterSequenceTypeAccountUtxo: FfiConverterRustBuffer<List<A
87438827

87448828

87458829

8830+
public object FfiConverterSequenceTypeActivityTags: FfiConverterRustBuffer<List<ActivityTags>> {
8831+
override fun read(buf: ByteBuffer): List<ActivityTags> {
8832+
val len = buf.getInt()
8833+
return List<ActivityTags>(len) {
8834+
FfiConverterTypeActivityTags.read(buf)
8835+
}
8836+
}
8837+
8838+
override fun allocationSize(value: List<ActivityTags>): ULong {
8839+
val sizeForLength = 4UL
8840+
val sizeForItems = value.sumOf { FfiConverterTypeActivityTags.allocationSize(it) }
8841+
return sizeForLength + sizeForItems
8842+
}
8843+
8844+
override fun write(value: List<ActivityTags>, buf: ByteBuffer) {
8845+
buf.putInt(value.size)
8846+
value.iterator().forEach {
8847+
FfiConverterTypeActivityTags.write(it, buf)
8848+
}
8849+
}
8850+
}
8851+
8852+
8853+
8854+
8855+
public object FfiConverterSequenceTypeActivityTagsMetadata: FfiConverterRustBuffer<List<ActivityTagsMetadata>> {
8856+
override fun read(buf: ByteBuffer): List<ActivityTagsMetadata> {
8857+
val len = buf.getInt()
8858+
return List<ActivityTagsMetadata>(len) {
8859+
FfiConverterTypeActivityTagsMetadata.read(buf)
8860+
}
8861+
}
8862+
8863+
override fun allocationSize(value: List<ActivityTagsMetadata>): ULong {
8864+
val sizeForLength = 4UL
8865+
val sizeForItems = value.sumOf { FfiConverterTypeActivityTagsMetadata.allocationSize(it) }
8866+
return sizeForLength + sizeForItems
8867+
}
8868+
8869+
override fun write(value: List<ActivityTagsMetadata>, buf: ByteBuffer) {
8870+
buf.putInt(value.size)
8871+
value.iterator().forEach {
8872+
FfiConverterTypeActivityTagsMetadata.write(it, buf)
8873+
}
8874+
}
8875+
}
8876+
8877+
8878+
8879+
87468880
public object FfiConverterSequenceTypeAddressInfo: FfiConverterRustBuffer<List<AddressInfo>> {
87478881
override fun read(buf: ByteBuffer): List<AddressInfo> {
87488882
val len = buf.getInt()
@@ -9725,6 +9859,15 @@ public fun `getAllClosedChannels`(`sortDirection`: SortDirection?): List<ClosedC
97259859
})
97269860
}
97279861

9862+
@Throws(ActivityException::class)
9863+
public fun `getAllTagMetadata`(): List<ActivityTagsMetadata> {
9864+
return FfiConverterSequenceTypeActivityTagsMetadata.lift(uniffiRustCallWithError(ActivityExceptionErrorHandler) { uniffiRustCallStatus ->
9865+
UniffiLib.uniffi_bitkitcore_fn_func_get_all_tag_metadata(
9866+
uniffiRustCallStatus,
9867+
)
9868+
})
9869+
}
9870+
97289871
@Throws(ActivityException::class)
97299872
public fun `getAllUniqueTags`(): List<kotlin.String> {
97309873
return FfiConverterSequenceString.lift(uniffiRustCallWithError(ActivityExceptionErrorHandler) { uniffiRustCallStatus ->
@@ -10515,6 +10658,16 @@ public suspend fun `upsertOrders`(`orders`: List<IBtOrder>) {
1051510658
)
1051610659
}
1051710660

10661+
@Throws(ActivityException::class)
10662+
public fun `upsertTags`(`activityTags`: List<ActivityTags>) {
10663+
uniffiRustCallWithError(ActivityExceptionErrorHandler) { uniffiRustCallStatus ->
10664+
UniffiLib.uniffi_bitkitcore_fn_func_upsert_tags(
10665+
FfiConverterSequenceTypeActivityTags.lower(`activityTags`),
10666+
uniffiRustCallStatus,
10667+
)
10668+
}
10669+
}
10670+
1051810671
@Throws(AddressException::class)
1051910672
public fun `validateBitcoinAddress`(`address`: kotlin.String): ValidationResult {
1052010673
return FfiConverterTypeValidationResult.lift(uniffiRustCallWithError(AddressExceptionErrorHandler) { uniffiRustCallStatus ->

bindings/android/lib/src/main/kotlin/com/synonym/bitkitcore/bitkitcore.common.kt

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,31 @@ public data class AccountUtxo (
188188

189189

190190

191+
@kotlinx.serialization.Serializable
192+
public data class ActivityTags (
193+
val `activityId`: kotlin.String,
194+
val `tags`: List<kotlin.String>
195+
) {
196+
public companion object
197+
}
198+
199+
200+
201+
@kotlinx.serialization.Serializable
202+
public data class ActivityTagsMetadata (
203+
val `id`: kotlin.String,
204+
val `paymentHash`: kotlin.String?,
205+
val `txId`: kotlin.String?,
206+
val `address`: kotlin.String,
207+
val `isReceive`: kotlin.Boolean,
208+
val `tags`: List<kotlin.String>,
209+
val `createdAt`: kotlin.ULong
210+
) {
211+
public companion object
212+
}
213+
214+
215+
191216
/**
192217
* Address information
193218
*/
@@ -3100,6 +3125,10 @@ public enum class WordCount {
31003125

31013126

31023127

3128+
3129+
3130+
3131+
31033132

31043133

31053134

0 commit comments

Comments
 (0)