Skip to content

Commit c917595

Browse files
committed
Add ibc fee messages
1 parent 8f8f0ef commit c917595

File tree

7 files changed

+727
-0
lines changed

7 files changed

+727
-0
lines changed

contracts/ibc-reflect-send/schema/ibc-reflect-send.json

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -402,6 +402,51 @@
402402
}
403403
]
404404
},
405+
"IbcEndpoint": {
406+
"type": "object",
407+
"required": [
408+
"channel_id",
409+
"port_id"
410+
],
411+
"properties": {
412+
"channel_id": {
413+
"type": "string"
414+
},
415+
"port_id": {
416+
"type": "string"
417+
}
418+
},
419+
"additionalProperties": false
420+
},
421+
"IbcFee": {
422+
"type": "object",
423+
"required": [
424+
"ack_fee",
425+
"recv_fee",
426+
"timeout_fee"
427+
],
428+
"properties": {
429+
"ack_fee": {
430+
"type": "array",
431+
"items": {
432+
"$ref": "#/definitions/Coin"
433+
}
434+
},
435+
"recv_fee": {
436+
"type": "array",
437+
"items": {
438+
"$ref": "#/definitions/Coin"
439+
}
440+
},
441+
"timeout_fee": {
442+
"type": "array",
443+
"items": {
444+
"$ref": "#/definitions/Coin"
445+
}
446+
}
447+
},
448+
"additionalProperties": false
449+
},
405450
"IbcMsg": {
406451
"description": "These are messages in the IBC lifecycle. Only usable by IBC-enabled contracts (contracts that directly speak the IBC protocol via 6 entry points)",
407452
"oneOf": [
@@ -514,6 +559,78 @@
514559
}
515560
},
516561
"additionalProperties": false
562+
},
563+
{
564+
"type": "object",
565+
"required": [
566+
"pay_packet_fee"
567+
],
568+
"properties": {
569+
"pay_packet_fee": {
570+
"type": "object",
571+
"required": [
572+
"fee",
573+
"relayers",
574+
"src"
575+
],
576+
"properties": {
577+
"fee": {
578+
"$ref": "#/definitions/IbcFee"
579+
},
580+
"relayers": {
581+
"description": "Allowlist of relayer addresses that can receive the fee. This is currently not implemented and *must* be empty.",
582+
"type": "array",
583+
"items": {
584+
"type": "string"
585+
}
586+
},
587+
"src": {
588+
"$ref": "#/definitions/IbcEndpoint"
589+
}
590+
},
591+
"additionalProperties": false
592+
}
593+
},
594+
"additionalProperties": false
595+
},
596+
{
597+
"type": "object",
598+
"required": [
599+
"pay_packet_fee_async"
600+
],
601+
"properties": {
602+
"pay_packet_fee_async": {
603+
"type": "object",
604+
"required": [
605+
"fee",
606+
"relayers",
607+
"sequence",
608+
"src"
609+
],
610+
"properties": {
611+
"fee": {
612+
"$ref": "#/definitions/IbcFee"
613+
},
614+
"relayers": {
615+
"description": "Allowlist of relayer addresses that can receive the fee. This is currently not implemented and *must* be empty.",
616+
"type": "array",
617+
"items": {
618+
"type": "string"
619+
}
620+
},
621+
"sequence": {
622+
"type": "integer",
623+
"format": "uint64",
624+
"minimum": 0.0
625+
},
626+
"src": {
627+
"$ref": "#/definitions/IbcEndpoint"
628+
}
629+
},
630+
"additionalProperties": false
631+
}
632+
},
633+
"additionalProperties": false
517634
}
518635
]
519636
},

contracts/ibc-reflect-send/schema/ibc/packet_msg.json

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -343,6 +343,51 @@
343343
}
344344
]
345345
},
346+
"IbcEndpoint": {
347+
"type": "object",
348+
"required": [
349+
"channel_id",
350+
"port_id"
351+
],
352+
"properties": {
353+
"channel_id": {
354+
"type": "string"
355+
},
356+
"port_id": {
357+
"type": "string"
358+
}
359+
},
360+
"additionalProperties": false
361+
},
362+
"IbcFee": {
363+
"type": "object",
364+
"required": [
365+
"ack_fee",
366+
"recv_fee",
367+
"timeout_fee"
368+
],
369+
"properties": {
370+
"ack_fee": {
371+
"type": "array",
372+
"items": {
373+
"$ref": "#/definitions/Coin"
374+
}
375+
},
376+
"recv_fee": {
377+
"type": "array",
378+
"items": {
379+
"$ref": "#/definitions/Coin"
380+
}
381+
},
382+
"timeout_fee": {
383+
"type": "array",
384+
"items": {
385+
"$ref": "#/definitions/Coin"
386+
}
387+
}
388+
},
389+
"additionalProperties": false
390+
},
346391
"IbcMsg": {
347392
"description": "These are messages in the IBC lifecycle. Only usable by IBC-enabled contracts (contracts that directly speak the IBC protocol via 6 entry points)",
348393
"oneOf": [
@@ -455,6 +500,78 @@
455500
}
456501
},
457502
"additionalProperties": false
503+
},
504+
{
505+
"type": "object",
506+
"required": [
507+
"pay_packet_fee"
508+
],
509+
"properties": {
510+
"pay_packet_fee": {
511+
"type": "object",
512+
"required": [
513+
"fee",
514+
"relayers",
515+
"src"
516+
],
517+
"properties": {
518+
"fee": {
519+
"$ref": "#/definitions/IbcFee"
520+
},
521+
"relayers": {
522+
"description": "Allowlist of relayer addresses that can receive the fee. This is currently not implemented and *must* be empty.",
523+
"type": "array",
524+
"items": {
525+
"type": "string"
526+
}
527+
},
528+
"src": {
529+
"$ref": "#/definitions/IbcEndpoint"
530+
}
531+
},
532+
"additionalProperties": false
533+
}
534+
},
535+
"additionalProperties": false
536+
},
537+
{
538+
"type": "object",
539+
"required": [
540+
"pay_packet_fee_async"
541+
],
542+
"properties": {
543+
"pay_packet_fee_async": {
544+
"type": "object",
545+
"required": [
546+
"fee",
547+
"relayers",
548+
"sequence",
549+
"src"
550+
],
551+
"properties": {
552+
"fee": {
553+
"$ref": "#/definitions/IbcFee"
554+
},
555+
"relayers": {
556+
"description": "Allowlist of relayer addresses that can receive the fee. This is currently not implemented and *must* be empty.",
557+
"type": "array",
558+
"items": {
559+
"type": "string"
560+
}
561+
},
562+
"sequence": {
563+
"type": "integer",
564+
"format": "uint64",
565+
"minimum": 0.0
566+
},
567+
"src": {
568+
"$ref": "#/definitions/IbcEndpoint"
569+
}
570+
},
571+
"additionalProperties": false
572+
}
573+
},
574+
"additionalProperties": false
458575
}
459576
]
460577
},

contracts/ibc-reflect-send/schema/raw/execute.json

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,51 @@
391391
}
392392
]
393393
},
394+
"IbcEndpoint": {
395+
"type": "object",
396+
"required": [
397+
"channel_id",
398+
"port_id"
399+
],
400+
"properties": {
401+
"channel_id": {
402+
"type": "string"
403+
},
404+
"port_id": {
405+
"type": "string"
406+
}
407+
},
408+
"additionalProperties": false
409+
},
410+
"IbcFee": {
411+
"type": "object",
412+
"required": [
413+
"ack_fee",
414+
"recv_fee",
415+
"timeout_fee"
416+
],
417+
"properties": {
418+
"ack_fee": {
419+
"type": "array",
420+
"items": {
421+
"$ref": "#/definitions/Coin"
422+
}
423+
},
424+
"recv_fee": {
425+
"type": "array",
426+
"items": {
427+
"$ref": "#/definitions/Coin"
428+
}
429+
},
430+
"timeout_fee": {
431+
"type": "array",
432+
"items": {
433+
"$ref": "#/definitions/Coin"
434+
}
435+
}
436+
},
437+
"additionalProperties": false
438+
},
394439
"IbcMsg": {
395440
"description": "These are messages in the IBC lifecycle. Only usable by IBC-enabled contracts (contracts that directly speak the IBC protocol via 6 entry points)",
396441
"oneOf": [
@@ -503,6 +548,78 @@
503548
}
504549
},
505550
"additionalProperties": false
551+
},
552+
{
553+
"type": "object",
554+
"required": [
555+
"pay_packet_fee"
556+
],
557+
"properties": {
558+
"pay_packet_fee": {
559+
"type": "object",
560+
"required": [
561+
"fee",
562+
"relayers",
563+
"src"
564+
],
565+
"properties": {
566+
"fee": {
567+
"$ref": "#/definitions/IbcFee"
568+
},
569+
"relayers": {
570+
"description": "Allowlist of relayer addresses that can receive the fee. This is currently not implemented and *must* be empty.",
571+
"type": "array",
572+
"items": {
573+
"type": "string"
574+
}
575+
},
576+
"src": {
577+
"$ref": "#/definitions/IbcEndpoint"
578+
}
579+
},
580+
"additionalProperties": false
581+
}
582+
},
583+
"additionalProperties": false
584+
},
585+
{
586+
"type": "object",
587+
"required": [
588+
"pay_packet_fee_async"
589+
],
590+
"properties": {
591+
"pay_packet_fee_async": {
592+
"type": "object",
593+
"required": [
594+
"fee",
595+
"relayers",
596+
"sequence",
597+
"src"
598+
],
599+
"properties": {
600+
"fee": {
601+
"$ref": "#/definitions/IbcFee"
602+
},
603+
"relayers": {
604+
"description": "Allowlist of relayer addresses that can receive the fee. This is currently not implemented and *must* be empty.",
605+
"type": "array",
606+
"items": {
607+
"type": "string"
608+
}
609+
},
610+
"sequence": {
611+
"type": "integer",
612+
"format": "uint64",
613+
"minimum": 0.0
614+
},
615+
"src": {
616+
"$ref": "#/definitions/IbcEndpoint"
617+
}
618+
},
619+
"additionalProperties": false
620+
}
621+
},
622+
"additionalProperties": false
506623
}
507624
]
508625
},

0 commit comments

Comments
 (0)