@agoric/cosmic-proto 0.4.1-upgrade-16-dev-12b78e3.0 → 0.4.1-upgrade-17-dev-3b97a9f.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +3 -21
  2. package/dist/codegen/agoric/bundle.d.ts +14 -0
  3. package/dist/codegen/agoric/bundle.js +4 -0
  4. package/dist/codegen/agoric/bundle.js.map +1 -1
  5. package/dist/codegen/agoric/swingset/genesis.d.ts +2 -0
  6. package/dist/codegen/agoric/swingset/genesis.js +13 -0
  7. package/dist/codegen/agoric/swingset/genesis.js.map +1 -1
  8. package/dist/codegen/agoric/vbank/vbank.js +1 -2
  9. package/dist/codegen/agoric/vbank/vbank.js.map +1 -1
  10. package/dist/codegen/agoric/vtransfer/genesis.d.ts +26 -0
  11. package/dist/codegen/agoric/vtransfer/genesis.js +69 -0
  12. package/dist/codegen/agoric/vtransfer/genesis.js.map +1 -0
  13. package/dist/codegen/amino/bundle.js +2 -2
  14. package/dist/codegen/binary.js +6 -6
  15. package/dist/codegen/binary.js.map +1 -1
  16. package/dist/codegen/cosmos/authz/v1beta1/authz.d.ts +5 -4
  17. package/dist/codegen/cosmos/authz/v1beta1/authz.js +16 -10
  18. package/dist/codegen/cosmos/authz/v1beta1/authz.js.map +1 -1
  19. package/dist/codegen/cosmos/bundle.d.ts +3990 -3990
  20. package/dist/codegen/cosmos/bundle.js +89 -89
  21. package/dist/codegen/cosmos/distribution/v1beta1/distribution.js +1 -2
  22. package/dist/codegen/cosmos/distribution/v1beta1/distribution.js.map +1 -1
  23. package/dist/codegen/cosmos/feegrant/v1beta1/feegrant.d.ts +5 -4
  24. package/dist/codegen/cosmos/feegrant/v1beta1/feegrant.js +17 -11
  25. package/dist/codegen/cosmos/feegrant/v1beta1/feegrant.js.map +1 -1
  26. package/dist/codegen/cosmos/gov/v1/gov.d.ts +9 -8
  27. package/dist/codegen/cosmos/gov/v1/gov.js +30 -18
  28. package/dist/codegen/cosmos/gov/v1/gov.js.map +1 -1
  29. package/dist/codegen/cosmos/gov/v1beta1/gov.d.ts +9 -8
  30. package/dist/codegen/cosmos/gov/v1beta1/gov.js +34 -23
  31. package/dist/codegen/cosmos/gov/v1beta1/gov.js.map +1 -1
  32. package/dist/codegen/cosmos/group/v1/types.d.ts +13 -12
  33. package/dist/codegen/cosmos/group/v1/types.js +50 -32
  34. package/dist/codegen/cosmos/group/v1/types.js.map +1 -1
  35. package/dist/codegen/cosmos/mint/v1beta1/mint.js +1 -2
  36. package/dist/codegen/cosmos/mint/v1beta1/mint.js.map +1 -1
  37. package/dist/codegen/cosmos/staking/v1beta1/staking.d.ts +9 -8
  38. package/dist/codegen/cosmos/staking/v1beta1/staking.js +34 -23
  39. package/dist/codegen/cosmos/staking/v1beta1/staking.js.map +1 -1
  40. package/dist/codegen/cosmos/staking/v1beta1/tx.d.ts +5 -4
  41. package/dist/codegen/cosmos/staking/v1beta1/tx.js +18 -13
  42. package/dist/codegen/cosmos/staking/v1beta1/tx.js.map +1 -1
  43. package/dist/codegen/cosmos/upgrade/v1beta1/upgrade.d.ts +3 -2
  44. package/dist/codegen/cosmos/upgrade/v1beta1/upgrade.js +11 -7
  45. package/dist/codegen/cosmos/upgrade/v1beta1/upgrade.js.map +1 -1
  46. package/dist/codegen/cosmos_proto/bundle.d.ts +21 -21
  47. package/dist/codegen/cosmos_proto/bundle.js +2 -2
  48. package/dist/codegen/gogoproto/bundle.js +2 -2
  49. package/dist/codegen/google/bundle.d.ts +277 -277
  50. package/dist/codegen/google/bundle.js +6 -6
  51. package/dist/codegen/helpers.d.ts +10 -0
  52. package/dist/codegen/helpers.js +64 -1
  53. package/dist/codegen/helpers.js.map +1 -1
  54. package/dist/codegen/ibc/bundle.d.ts +1554 -1554
  55. package/dist/codegen/ibc/bundle.js +46 -46
  56. package/dist/codegen/ibc/bundle.js.map +1 -1
  57. package/dist/codegen/ibc/lightclients/tendermint/v1/tendermint.d.ts +3 -2
  58. package/dist/codegen/ibc/lightclients/tendermint/v1/tendermint.js +10 -7
  59. package/dist/codegen/ibc/lightclients/tendermint/v1/tendermint.js.map +1 -1
  60. package/dist/codegen/icq/bundle.d.ts +85 -85
  61. package/dist/codegen/icq/bundle.js +6 -6
  62. package/dist/codegen/ics23/bundle.d.ts +113 -113
  63. package/dist/codegen/ics23/bundle.js +2 -2
  64. package/dist/codegen/tendermint/abci/types.d.ts +5 -4
  65. package/dist/codegen/tendermint/abci/types.js +20 -12
  66. package/dist/codegen/tendermint/abci/types.js.map +1 -1
  67. package/dist/codegen/tendermint/bundle.d.ts +716 -716
  68. package/dist/codegen/tendermint/bundle.js +17 -17
  69. package/dist/codegen/tendermint/p2p/types.d.ts +7 -6
  70. package/dist/codegen/tendermint/p2p/types.js +23 -14
  71. package/dist/codegen/tendermint/p2p/types.js.map +1 -1
  72. package/dist/codegen/tendermint/types/evidence.d.ts +5 -4
  73. package/dist/codegen/tendermint/types/evidence.js +18 -12
  74. package/dist/codegen/tendermint/types/evidence.js.map +1 -1
  75. package/dist/codegen/tendermint/types/types.d.ts +9 -8
  76. package/dist/codegen/tendermint/types/types.js +35 -22
  77. package/dist/codegen/tendermint/types/types.js.map +1 -1
  78. package/dist/codegen/varint.js +2 -2
  79. package/dist/codegen/varint.js.map +1 -1
  80. package/dist/helpers.d.ts +6 -4
  81. package/dist/helpers.js +1 -1
  82. package/dist/helpers.js.map +1 -1
  83. package/dist/index.d.ts +1 -1
  84. package/dist/index.js +4 -1
  85. package/dist/index.js.map +1 -1
  86. package/package.json +17 -16
  87. package/dist/vatsafe.d.ts +0 -2
  88. package/dist/vatsafe.js +0 -3
  89. package/dist/vatsafe.js.map +0 -1
@@ -1,17 +1,17 @@
1
1
  //@ts-nocheck
2
- import * as _81 from './protobuf/any.js';
3
- import * as _82 from './protobuf/descriptor.js';
4
- import * as _83 from './protobuf/duration.js';
5
- import * as _84 from './protobuf/empty.js';
6
- import * as _85 from './protobuf/timestamp.js';
2
+ import * as _82 from './protobuf/any.js';
3
+ import * as _83 from './protobuf/descriptor.js';
4
+ import * as _84 from './protobuf/duration.js';
5
+ import * as _85 from './protobuf/empty.js';
6
+ import * as _86 from './protobuf/timestamp.js';
7
7
  export var google;
8
8
  (function (google) {
9
9
  google.protobuf = {
10
- ..._81,
11
10
  ..._82,
12
11
  ..._83,
13
12
  ..._84,
14
13
  ..._85,
14
+ ..._86,
15
15
  };
16
16
  })(google || (google = {}));
17
17
  //# sourceMappingURL=bundle.js.map
@@ -78,4 +78,14 @@ interface Timestamp {
78
78
  export declare function toTimestamp(date: Date): Timestamp;
79
79
  export declare function fromTimestamp(t: Timestamp): Date;
80
80
  export declare function fromJsonTimestamp(o: any): Timestamp;
81
+ /**
82
+ * A type for arbitrary precision, non-negative decimals.
83
+ *
84
+ * Instances of this class are immutable.
85
+ */
86
+ export declare class Decimal {
87
+ static fromUserInput(input: string, fractionalDigits: number): Decimal;
88
+ static fromAtomics(atomics: string, fractionalDigits: number): Decimal;
89
+ private static verifyFractionalDigits;
90
+ }
81
91
  export {};
@@ -21,7 +21,7 @@ export function omitDefault(input) {
21
21
  if (typeof input === 'bigint') {
22
22
  return input === BigInt(0) ? undefined : input;
23
23
  }
24
- throw new Error(`Got unsupported type ${typeof input}`);
24
+ throw Error(`Got unsupported type ${typeof input}`);
25
25
  }
26
26
  export function toDuration(duration) {
27
27
  return {
@@ -98,4 +98,67 @@ export function fromJsonTimestamp(o) {
98
98
  function numberToLong(number) {
99
99
  return BigInt(Math.trunc(number));
100
100
  }
101
+ // The largest value we need is 18 (Ether).
102
+ const maxFractionalDigits = 30;
103
+ // Subset of Decimal in @cosmjs/math
104
+ /**
105
+ * A type for arbitrary precision, non-negative decimals.
106
+ *
107
+ * Instances of this class are immutable.
108
+ */
109
+ export class Decimal {
110
+ static fromUserInput(input, fractionalDigits) {
111
+ Decimal.verifyFractionalDigits(fractionalDigits);
112
+ const badCharacter = input.match(/[^0-9.]/);
113
+ if (badCharacter) {
114
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
115
+ throw Error(`Invalid character at position ${badCharacter.index + 1}`);
116
+ }
117
+ let whole;
118
+ let fractional;
119
+ if (input === '') {
120
+ whole = '0';
121
+ fractional = '';
122
+ }
123
+ else if (input.search(/./) === -1) {
124
+ // integer format, no separator
125
+ whole = input;
126
+ fractional = '';
127
+ }
128
+ else {
129
+ const parts = input.split('.');
130
+ switch (parts.length) {
131
+ case 0:
132
+ case 1:
133
+ throw Error('Fewer than two elements in split result. This must not happen here.');
134
+ case 2:
135
+ if (!parts[1])
136
+ throw Error('Fractional part missing');
137
+ whole = parts[0];
138
+ fractional = parts[1].replace(/0+$/, '');
139
+ break;
140
+ default:
141
+ throw Error('More than one separator found');
142
+ }
143
+ }
144
+ if (fractional.length > fractionalDigits) {
145
+ throw Error('Got more fractional digits than supported');
146
+ }
147
+ const quantity = `${whole}${fractional.padEnd(fractionalDigits, '0')}`;
148
+ return new Decimal(quantity, fractionalDigits);
149
+ }
150
+ static fromAtomics(atomics, fractionalDigits) {
151
+ Decimal.verifyFractionalDigits(fractionalDigits);
152
+ return new Decimal(atomics, fractionalDigits);
153
+ }
154
+ static verifyFractionalDigits(fractionalDigits) {
155
+ if (!Number.isInteger(fractionalDigits))
156
+ throw Error('Fractional digits is not an integer');
157
+ if (fractionalDigits < 0)
158
+ throw Error('Fractional digits must not be negative');
159
+ if (fractionalDigits > maxFractionalDigits) {
160
+ throw Error(`Fractional digits must not exceed ${maxFractionalDigits}`);
161
+ }
162
+ }
163
+ }
101
164
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/codegen/helpers.ts"],"names":[],"mappings":"AAAA,aAAa;AACb;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE1D,qCAAqC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAkC,YAAY,CAAC;AAC3E,MAAM,CAAC,MAAM,eAAe,GAAkC,YAAY,CAAC;AAO3E,MAAM,UAAU,WAAW,CACzB,KAAQ;IAER,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,KAAK,EAAE,CAAC,CAAC;AAC1D,CAAC;AAqBD,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,CAAC;QAC5D,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,UAAU;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAkB;IAC7C,OAAO,CACL,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,UAAU;QAClD,QAAQ,CAAC,KAAK,CACf,CAAC,QAAQ,EAAE,CAAC;AACf,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,KAAU;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAU;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAsBD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,OAAe,EACf,UAAwB,EACxB,EAAE;IACF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,UAAU,EAAE,UAAU,KAAK,WAAW,EAAE,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC;IACnE,CAAC;IACD,IAAI,OAAO,UAAU,EAAE,GAAG,KAAK,WAAW,EAAE,CAAC;QAC3C,uBAAuB;QACvB,6DAA6D;QAE7D,uBAAuB;QACvB,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,CACrE,QAAQ,CACT,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,UAAU,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;QAC7C,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACnE,CAAC;IACD,IAAI,OAAO,UAAU,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;QAC9C,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,OAAO,UAAU,EAAE,OAAO,KAAK,WAAW,EAAE,CAAC;QAC/C,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;IAC5D,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAuDF,MAAM,UAAU,WAAW,CAAC,IAAU;IACpC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC;IAChD,OAAO;QACL,OAAO;QACP,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,CAAY;IACxC,IAAI,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACtC,MAAM,IAAI,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC;IAC5B,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,MAAW,EAAa,EAAE;IACnD,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YAC5B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACb,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KACtD,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,CAAM;IACtC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QACtB,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;SAAM,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,MAAc;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/codegen/helpers.ts"],"names":[],"mappings":"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"}