@ottochain/sdk 2.3.0 → 2.5.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 (287) hide show
  1. package/dist/cjs/apps/compute/index.js +33 -0
  2. package/dist/cjs/apps/compute/state-machines/compute-rule110.js +164 -0
  3. package/dist/cjs/apps/compute/state-machines/index.js +9 -0
  4. package/dist/cjs/apps/contracts/index.js +16 -9
  5. package/dist/cjs/apps/contracts/state-machines/contract-agreement.js +134 -161
  6. package/dist/cjs/apps/contracts/state-machines/contract-escrow.js +192 -170
  7. package/dist/cjs/apps/contracts/state-machines/contract-universal.js +46 -58
  8. package/dist/cjs/apps/corporate/index.js +2 -2
  9. package/dist/cjs/apps/corporate/state-machines/corp-board.js +500 -456
  10. package/dist/cjs/apps/corporate/state-machines/corp-entity.js +487 -361
  11. package/dist/cjs/apps/corporate/state-machines/corp-securities.js +769 -576
  12. package/dist/cjs/apps/corporate/state-machines/corp-shareholders.js +567 -557
  13. package/dist/cjs/apps/governance/index.js +21 -21
  14. package/dist/cjs/apps/governance/state-machines/dao-multisig.js +188 -209
  15. package/dist/cjs/apps/governance/state-machines/dao-reputation.js +181 -228
  16. package/dist/cjs/apps/governance/state-machines/dao-single.js +105 -88
  17. package/dist/cjs/apps/governance/state-machines/dao-token.js +199 -227
  18. package/dist/cjs/apps/governance/state-machines/governance-simple.js +231 -231
  19. package/dist/cjs/apps/governance/state-machines/governance-universal.js +64 -64
  20. package/dist/cjs/apps/identity/constants.js +55 -22
  21. package/dist/cjs/apps/identity/index.js +28 -12
  22. package/dist/cjs/apps/identity/state-machines/identity-agent.js +124 -158
  23. package/dist/cjs/apps/identity/state-machines/identity-oracle.js +158 -173
  24. package/dist/cjs/apps/identity/state-machines/identity-registry.js +262 -0
  25. package/dist/cjs/apps/identity/state-machines/identity-universal.js +51 -57
  26. package/dist/cjs/apps/identity/state-machines/index.js +3 -1
  27. package/dist/cjs/apps/index.js +22 -8
  28. package/dist/cjs/apps/lending/assets.js +247 -0
  29. package/dist/cjs/apps/lending/credit-scoring.js +87 -0
  30. package/dist/cjs/apps/lending/eligibility.js +105 -0
  31. package/dist/cjs/apps/lending/index.js +91 -0
  32. package/dist/cjs/apps/lending/state-machines/index.js +9 -0
  33. package/dist/cjs/apps/lending/state-machines/lending-zk-loan.js +433 -0
  34. package/dist/cjs/apps/markets/index.js +22 -12
  35. package/dist/cjs/apps/markets/state-machines/market-auction.js +116 -134
  36. package/dist/cjs/apps/markets/state-machines/market-crowdfund.js +131 -141
  37. package/dist/cjs/apps/markets/state-machines/market-group-buy.js +163 -184
  38. package/dist/cjs/apps/markets/state-machines/market-prediction.js +226 -233
  39. package/dist/cjs/apps/markets/state-machines/market-universal.js +65 -80
  40. package/dist/cjs/apps/oracles/index.js +3 -3
  41. package/dist/cjs/apps/privacy/index.js +67 -0
  42. package/dist/cjs/apps/privacy/state-machines/index.js +17 -0
  43. package/dist/cjs/apps/privacy/state-machines/mixer-ddhRing.js +286 -0
  44. package/dist/cjs/apps/privacy/state-machines/note-pool.js +476 -0
  45. package/dist/cjs/apps/staked-pool/assets.js +103 -0
  46. package/dist/cjs/apps/staked-pool/base.js +498 -0
  47. package/dist/cjs/apps/staked-pool/consumer.js +55 -0
  48. package/dist/cjs/apps/staked-pool/index.js +83 -0
  49. package/dist/cjs/apps/staked-pool/state-machines/index.js +12 -0
  50. package/dist/cjs/apps/staked-pool/state-machines/staked-pool-base.js +49 -0
  51. package/dist/cjs/apps/staked-pool/state-machines/staked-pool-oracle.js +131 -0
  52. package/dist/cjs/errors.js +3 -3
  53. package/dist/cjs/generated/google/protobuf/struct.js +5 -5
  54. package/dist/cjs/generated/google/protobuf/timestamp.js +1 -1
  55. package/dist/cjs/generated/index.js +11 -7
  56. package/dist/cjs/generated/openapi.js +6 -0
  57. package/dist/cjs/generated/ottochain/apps/contracts/v1/contract.js +51 -51
  58. package/dist/cjs/generated/ottochain/apps/corporate/v1/corporate.js +20 -21
  59. package/dist/cjs/generated/ottochain/apps/governance/v1/governance.js +14 -14
  60. package/dist/cjs/generated/ottochain/apps/identity/v1/attestation.js +5 -5
  61. package/dist/cjs/generated/ottochain/apps/identity/v1/identity.js +125 -131
  62. package/dist/cjs/generated/ottochain/apps/markets/v1/market.js +108 -108
  63. package/dist/cjs/generated/ottochain/v1/common.js +5 -5
  64. package/dist/cjs/generated/ottochain/v1/fiber.js +44 -6
  65. package/dist/cjs/generated/ottochain/v1/messages.js +1 -1
  66. package/dist/cjs/generated/ottochain/v1/records.js +1 -1
  67. package/dist/cjs/index.js +58 -7
  68. package/dist/cjs/openapi.js +2 -0
  69. package/dist/cjs/ottochain/drop-nulls.js +1 -2
  70. package/dist/cjs/ottochain/genesis-manifest.js +17 -11
  71. package/dist/cjs/ottochain/index.js +23 -13
  72. package/dist/cjs/ottochain/metagraph-client.js +81 -16
  73. package/dist/cjs/ottochain/snapshot.js +13 -16
  74. package/dist/cjs/ottochain/transaction.js +67 -14
  75. package/dist/cjs/ottochain/types.js +16 -2
  76. package/dist/cjs/privacy/index.js +14 -0
  77. package/dist/cjs/privacy/sealed-bid.js +213 -0
  78. package/dist/cjs/privacy/shield-app.js +131 -0
  79. package/dist/cjs/schema/effects.js +156 -0
  80. package/dist/cjs/schema/fiber-app.js +150 -15
  81. package/dist/cjs/schema/guard-lint.js +343 -0
  82. package/dist/cjs/schema/guards.js +246 -0
  83. package/dist/cjs/signing.js +80 -0
  84. package/dist/cjs/templates/asset-policy.js +190 -0
  85. package/dist/cjs/templates/index.js +86 -0
  86. package/dist/cjs/templates/machine.js +130 -0
  87. package/dist/cjs/templates/migration.js +39 -0
  88. package/dist/cjs/templates/state-shape.js +38 -0
  89. package/dist/cjs/types.js +2 -3
  90. package/dist/cjs/validation.js +9 -11
  91. package/dist/cjs/verify.js +9 -4
  92. package/dist/cjs/zk/commit.js +53 -0
  93. package/dist/cjs/zk/guard.js +107 -0
  94. package/dist/cjs/zk/index.js +48 -0
  95. package/dist/cjs/zk/preimage.js +37 -0
  96. package/dist/cjs/zk/prover.js +87 -0
  97. package/dist/cjs/zk/registry.js +62 -0
  98. package/dist/cjs/zk/types.js +28 -0
  99. package/dist/cjs/zk/witness.js +19 -0
  100. package/dist/esm/apps/compute/index.js +29 -0
  101. package/dist/esm/apps/compute/state-machines/compute-rule110.js +161 -0
  102. package/dist/esm/apps/compute/state-machines/index.js +5 -0
  103. package/dist/esm/apps/contracts/index.js +9 -5
  104. package/dist/esm/apps/contracts/state-machines/contract-agreement.js +135 -162
  105. package/dist/esm/apps/contracts/state-machines/contract-escrow.js +193 -171
  106. package/dist/esm/apps/contracts/state-machines/contract-universal.js +47 -59
  107. package/dist/esm/apps/corporate/index.js +2 -2
  108. package/dist/esm/apps/corporate/state-machines/corp-board.js +501 -457
  109. package/dist/esm/apps/corporate/state-machines/corp-entity.js +488 -362
  110. package/dist/esm/apps/corporate/state-machines/corp-securities.js +770 -577
  111. package/dist/esm/apps/corporate/state-machines/corp-shareholders.js +568 -558
  112. package/dist/esm/apps/governance/index.js +10 -10
  113. package/dist/esm/apps/governance/state-machines/dao-multisig.js +189 -210
  114. package/dist/esm/apps/governance/state-machines/dao-reputation.js +182 -229
  115. package/dist/esm/apps/governance/state-machines/dao-single.js +106 -89
  116. package/dist/esm/apps/governance/state-machines/dao-token.js +200 -228
  117. package/dist/esm/apps/governance/state-machines/governance-simple.js +232 -232
  118. package/dist/esm/apps/governance/state-machines/governance-universal.js +65 -65
  119. package/dist/esm/apps/identity/constants.js +52 -21
  120. package/dist/esm/apps/identity/index.js +14 -9
  121. package/dist/esm/apps/identity/state-machines/identity-agent.js +125 -159
  122. package/dist/esm/apps/identity/state-machines/identity-oracle.js +159 -174
  123. package/dist/esm/apps/identity/state-machines/identity-registry.js +259 -0
  124. package/dist/esm/apps/identity/state-machines/identity-universal.js +52 -58
  125. package/dist/esm/apps/identity/state-machines/index.js +1 -0
  126. package/dist/esm/apps/index.js +9 -5
  127. package/dist/esm/apps/lending/assets.js +231 -0
  128. package/dist/esm/apps/lending/credit-scoring.js +81 -0
  129. package/dist/esm/apps/lending/eligibility.js +99 -0
  130. package/dist/esm/apps/lending/index.js +69 -0
  131. package/dist/esm/apps/lending/state-machines/index.js +5 -0
  132. package/dist/esm/apps/lending/state-machines/lending-zk-loan.js +430 -0
  133. package/dist/esm/apps/markets/index.js +11 -7
  134. package/dist/esm/apps/markets/state-machines/market-auction.js +117 -135
  135. package/dist/esm/apps/markets/state-machines/market-crowdfund.js +132 -142
  136. package/dist/esm/apps/markets/state-machines/market-group-buy.js +164 -185
  137. package/dist/esm/apps/markets/state-machines/market-prediction.js +227 -234
  138. package/dist/esm/apps/markets/state-machines/market-universal.js +66 -81
  139. package/dist/esm/apps/oracles/index.js +3 -3
  140. package/dist/esm/apps/privacy/index.js +56 -0
  141. package/dist/esm/apps/privacy/state-machines/index.js +6 -0
  142. package/dist/esm/apps/privacy/state-machines/mixer-ddhRing.js +282 -0
  143. package/dist/esm/apps/privacy/state-machines/note-pool.js +470 -0
  144. package/dist/esm/apps/staked-pool/assets.js +91 -0
  145. package/dist/esm/apps/staked-pool/base.js +493 -0
  146. package/dist/esm/apps/staked-pool/consumer.js +49 -0
  147. package/dist/esm/apps/staked-pool/index.js +60 -0
  148. package/dist/esm/apps/staked-pool/state-machines/index.js +6 -0
  149. package/dist/esm/apps/staked-pool/state-machines/staked-pool-base.js +46 -0
  150. package/dist/esm/apps/staked-pool/state-machines/staked-pool-oracle.js +127 -0
  151. package/dist/esm/generated/google/protobuf/struct.js +1 -1
  152. package/dist/esm/generated/google/protobuf/timestamp.js +1 -1
  153. package/dist/esm/generated/index.js +9 -5
  154. package/dist/esm/generated/openapi.js +5 -0
  155. package/dist/esm/generated/ottochain/apps/contracts/v1/contract.js +47 -47
  156. package/dist/esm/generated/ottochain/apps/corporate/v1/corporate.js +1 -1
  157. package/dist/esm/generated/ottochain/apps/governance/v1/governance.js +1 -1
  158. package/dist/esm/generated/ottochain/apps/identity/v1/attestation.js +1 -1
  159. package/dist/esm/generated/ottochain/apps/identity/v1/identity.js +115 -121
  160. package/dist/esm/generated/ottochain/apps/markets/v1/market.js +101 -101
  161. package/dist/esm/generated/ottochain/v1/common.js +1 -1
  162. package/dist/esm/generated/ottochain/v1/fiber.js +40 -2
  163. package/dist/esm/generated/ottochain/v1/messages.js +1 -1
  164. package/dist/esm/generated/ottochain/v1/records.js +1 -1
  165. package/dist/esm/index.js +28 -3
  166. package/dist/esm/openapi.js +1 -0
  167. package/dist/esm/ottochain/genesis-manifest.js +15 -9
  168. package/dist/esm/ottochain/index.js +2 -3
  169. package/dist/esm/ottochain/metagraph-client.js +81 -16
  170. package/dist/esm/ottochain/snapshot.js +6 -8
  171. package/dist/esm/ottochain/transaction.js +51 -3
  172. package/dist/esm/ottochain/types.js +15 -1
  173. package/dist/esm/privacy/index.js +6 -0
  174. package/dist/esm/privacy/sealed-bid.js +209 -0
  175. package/dist/esm/privacy/shield-app.js +127 -0
  176. package/dist/esm/schema/effects.js +145 -0
  177. package/dist/esm/schema/fiber-app.js +139 -8
  178. package/dist/esm/schema/guard-lint.js +337 -0
  179. package/dist/esm/schema/guards.js +228 -0
  180. package/dist/esm/signing.js +74 -0
  181. package/dist/esm/templates/asset-policy.js +182 -0
  182. package/dist/esm/templates/index.js +41 -0
  183. package/dist/esm/templates/machine.js +125 -0
  184. package/dist/esm/templates/migration.js +34 -0
  185. package/dist/esm/templates/state-shape.js +34 -0
  186. package/dist/esm/validation.js +1 -3
  187. package/dist/esm/verify.js +8 -2
  188. package/dist/esm/zk/commit.js +44 -0
  189. package/dist/esm/zk/guard.js +99 -0
  190. package/dist/esm/zk/index.js +19 -0
  191. package/dist/esm/zk/preimage.js +30 -0
  192. package/dist/esm/zk/prover.js +82 -0
  193. package/dist/esm/zk/registry.js +55 -0
  194. package/dist/esm/zk/types.js +25 -0
  195. package/dist/esm/zk/witness.js +15 -0
  196. package/dist/types/apps/compute/index.d.ts +176 -0
  197. package/dist/types/apps/compute/state-machines/compute-rule110.d.ts +157 -0
  198. package/dist/types/apps/compute/state-machines/index.d.ts +5 -0
  199. package/dist/types/apps/contracts/index.d.ts +81 -221
  200. package/dist/types/apps/contracts/state-machines/contract-agreement.d.ts +23 -98
  201. package/dist/types/apps/contracts/state-machines/contract-escrow.d.ts +49 -115
  202. package/dist/types/apps/contracts/state-machines/contract-universal.d.ts +4 -4
  203. package/dist/types/apps/corporate/index.d.ts +1176 -440
  204. package/dist/types/apps/corporate/state-machines/corp-board.d.ts +271 -135
  205. package/dist/types/apps/corporate/state-machines/corp-entity.d.ts +279 -74
  206. package/dist/types/apps/corporate/state-machines/corp-securities.d.ts +373 -149
  207. package/dist/types/apps/corporate/state-machines/corp-shareholders.d.ts +252 -80
  208. package/dist/types/apps/governance/index.d.ts +368 -470
  209. package/dist/types/apps/governance/state-machines/dao-multisig.d.ts +92 -107
  210. package/dist/types/apps/governance/state-machines/dao-reputation.d.ts +61 -85
  211. package/dist/types/apps/governance/state-machines/dao-single.d.ts +25 -47
  212. package/dist/types/apps/governance/state-machines/dao-token.d.ts +79 -68
  213. package/dist/types/apps/governance/state-machines/governance-simple.d.ts +95 -125
  214. package/dist/types/apps/governance/state-machines/governance-universal.d.ts +6 -6
  215. package/dist/types/apps/identity/constants.d.ts +33 -5
  216. package/dist/types/apps/identity/index.d.ts +415 -131
  217. package/dist/types/apps/identity/state-machines/identity-agent.d.ts +23 -23
  218. package/dist/types/apps/identity/state-machines/identity-oracle.d.ts +27 -98
  219. package/dist/types/apps/identity/state-machines/identity-registry.d.ts +379 -0
  220. package/dist/types/apps/identity/state-machines/identity-universal.d.ts +4 -4
  221. package/dist/types/apps/identity/state-machines/index.d.ts +1 -0
  222. package/dist/types/apps/index.d.ts +9 -5
  223. package/dist/types/apps/lending/assets.d.ts +258 -0
  224. package/dist/types/apps/lending/credit-scoring.d.ts +80 -0
  225. package/dist/types/apps/lending/eligibility.d.ts +83 -0
  226. package/dist/types/apps/lending/index.d.ts +556 -0
  227. package/dist/types/apps/lending/state-machines/index.d.ts +5 -0
  228. package/dist/types/apps/lending/state-machines/lending-zk-loan.d.ts +536 -0
  229. package/dist/types/apps/markets/index.d.ts +181 -276
  230. package/dist/types/apps/markets/state-machines/market-auction.d.ts +25 -49
  231. package/dist/types/apps/markets/state-machines/market-crowdfund.d.ts +35 -53
  232. package/dist/types/apps/markets/state-machines/market-group-buy.d.ts +35 -61
  233. package/dist/types/apps/markets/state-machines/market-prediction.d.ts +65 -86
  234. package/dist/types/apps/markets/state-machines/market-universal.d.ts +12 -12
  235. package/dist/types/apps/oracles/index.d.ts +1 -1
  236. package/dist/types/apps/privacy/index.d.ts +328 -0
  237. package/dist/types/apps/privacy/state-machines/index.d.ts +6 -0
  238. package/dist/types/apps/privacy/state-machines/mixer-ddhRing.d.ts +337 -0
  239. package/dist/types/apps/privacy/state-machines/note-pool.d.ts +196 -0
  240. package/dist/types/apps/staked-pool/assets.d.ts +53 -0
  241. package/dist/types/apps/staked-pool/base.d.ts +80 -0
  242. package/dist/types/apps/staked-pool/consumer.d.ts +29 -0
  243. package/dist/types/apps/staked-pool/index.d.ts +51 -0
  244. package/dist/types/apps/staked-pool/state-machines/index.d.ts +6 -0
  245. package/dist/types/apps/staked-pool/state-machines/staked-pool-base.d.ts +8 -0
  246. package/dist/types/apps/staked-pool/state-machines/staked-pool-oracle.d.ts +34 -0
  247. package/dist/types/generated/index.d.ts +5 -5
  248. package/dist/types/generated/openapi.d.ts +1270 -0
  249. package/dist/types/generated/ottochain/apps/contracts/v1/contract.d.ts +5 -5
  250. package/dist/types/generated/ottochain/apps/identity/v1/identity.d.ts +12 -12
  251. package/dist/types/generated/ottochain/apps/markets/v1/market.d.ts +11 -11
  252. package/dist/types/generated/ottochain/v1/fiber.d.ts +7 -0
  253. package/dist/types/index.d.ts +7 -3
  254. package/dist/types/openapi.d.ts +24 -0
  255. package/dist/types/ottochain/genesis-manifest.d.ts +11 -5
  256. package/dist/types/ottochain/index.d.ts +5 -6
  257. package/dist/types/ottochain/metagraph-client.d.ts +49 -7
  258. package/dist/types/ottochain/snapshot.d.ts +6 -6
  259. package/dist/types/ottochain/transaction.d.ts +41 -1
  260. package/dist/types/ottochain/types.d.ts +336 -31
  261. package/dist/types/privacy/index.d.ts +6 -0
  262. package/dist/types/privacy/sealed-bid.d.ts +348 -0
  263. package/dist/types/privacy/shield-app.d.ts +48 -0
  264. package/dist/types/schema/effects.d.ts +141 -0
  265. package/dist/types/schema/fiber-app.d.ts +282 -2
  266. package/dist/types/schema/guard-lint.d.ts +111 -0
  267. package/dist/types/schema/guards.d.ts +146 -0
  268. package/dist/types/signing.d.ts +45 -0
  269. package/dist/types/templates/asset-policy.d.ts +119 -0
  270. package/dist/types/templates/index.d.ts +26 -0
  271. package/dist/types/templates/machine.d.ts +139 -0
  272. package/dist/types/templates/migration.d.ts +34 -0
  273. package/dist/types/templates/state-shape.d.ts +30 -0
  274. package/dist/types/validation.d.ts +22 -217
  275. package/dist/types/verify.d.ts +4 -0
  276. package/dist/types/zk/commit.d.ts +28 -0
  277. package/dist/types/zk/guard.d.ts +46 -0
  278. package/dist/types/zk/index.d.ts +19 -0
  279. package/dist/types/zk/preimage.d.ts +10 -0
  280. package/dist/types/zk/prover.d.ts +34 -0
  281. package/dist/types/zk/registry.d.ts +34 -0
  282. package/dist/types/zk/types.d.ts +33 -0
  283. package/dist/types/zk/witness.d.ts +40 -0
  284. package/package.json +47 -15
  285. package/dist/cjs/ottochain/normalize.js +0 -186
  286. package/dist/esm/ottochain/normalize.js +0 -179
  287. package/dist/types/ottochain/normalize.d.ts +0 -79
@@ -2,141 +2,142 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.marketCrowdfundDef = void 0;
4
4
  const fiber_app_js_1 = require("../../../schema/fiber-app.js");
5
+ const guards_js_1 = require("../../../schema/guards.js");
5
6
  /**
6
7
  * All-or-nothing crowdfunding with threshold, deadline, and stretch goals.
7
8
  */
8
9
  exports.marketCrowdfundDef = (0, fiber_app_js_1.defineFiberApp)({
9
10
  metadata: {
10
- name: "MarketCrowdfund",
11
- app: "markets",
12
- type: "crowdfund",
13
- version: "1.0.0",
14
- description: "All-or-nothing crowdfunding with threshold, deadline, and stretch goals",
11
+ name: 'MarketCrowdfund',
12
+ app: 'markets',
13
+ type: 'crowdfund',
14
+ version: '1.0.0',
15
+ description: 'All-or-nothing crowdfunding with threshold, deadline, and stretch goals',
15
16
  crossReferences: {
16
17
  creatorIdentityId: "Links to creator's IdentityAgent",
17
- treasuryId: "Links to Treasury for fund custody",
18
+ treasuryId: 'Links to Treasury for fund custody',
18
19
  },
19
20
  },
20
21
  createSchema: {
21
- required: ["creator", "threshold", "deadline"],
22
+ required: ['creator', 'threshold', 'deadline'],
22
23
  properties: {
23
24
  creator: {
24
- type: "address",
25
- description: "DAG address of campaign creator",
25
+ type: 'address',
26
+ description: 'DAG address of campaign creator',
26
27
  immutable: true,
27
28
  },
28
29
  threshold: {
29
- type: "number",
30
+ type: 'number',
30
31
  minimum: 0,
31
- description: "Funding goal amount",
32
+ description: 'Funding goal amount',
32
33
  immutable: true,
33
34
  },
34
35
  deadline: {
35
- type: "timestamp",
36
- description: "Campaign deadline",
36
+ type: 'timestamp',
37
+ description: 'Campaign deadline',
37
38
  immutable: true,
38
39
  },
39
40
  minPledge: {
40
- type: "number",
41
+ type: 'number',
41
42
  minimum: 0,
42
- description: "Minimum pledge amount",
43
+ description: 'Minimum pledge amount',
43
44
  },
44
- stretchGoals: { type: "array", description: "Stretch goal targets" },
45
+ stretchGoals: { type: 'array', description: 'Stretch goal targets' },
45
46
  },
46
47
  },
47
48
  stateSchema: {
48
49
  properties: {
49
- status: { type: "string", computed: true },
50
- creator: { type: "address", immutable: true },
51
- threshold: { type: "number", immutable: true },
52
- deadline: { type: "timestamp", immutable: true },
53
- minPledge: { type: "number" },
54
- stretchGoals: { type: "array" },
55
- pledges: { type: "array", computed: true },
56
- totalPledged: { type: "number", computed: true },
57
- backerCount: { type: "number", computed: true },
58
- refundsClaimed: { type: "array", computed: true },
50
+ status: { type: 'string', computed: true },
51
+ creator: { type: 'address', immutable: true },
52
+ threshold: { type: 'number', immutable: true },
53
+ deadline: { type: 'timestamp', immutable: true },
54
+ minPledge: { type: 'number' },
55
+ stretchGoals: { type: 'array' },
56
+ pledges: { type: 'array', computed: true },
57
+ totalPledged: { type: 'number', computed: true },
58
+ backerCount: { type: 'number', computed: true },
59
+ refundsClaimed: { type: 'array', computed: true },
59
60
  },
60
61
  },
61
62
  eventSchemas: {
62
- launch: { description: "Launch the campaign" },
63
- cancel: { description: "Cancel the campaign" },
63
+ launch: { description: 'Launch the campaign' },
64
+ cancel: { description: 'Cancel the campaign' },
64
65
  pledge: {
65
- description: "Make a pledge",
66
- required: ["amount"],
66
+ description: 'Make a pledge',
67
+ required: ['amount'],
67
68
  properties: {
68
- amount: { type: "number", minimum: 0 },
69
- rewardTier: { type: "string" },
69
+ amount: { type: 'number', minimum: 0 },
70
+ rewardTier: { type: 'string' },
70
71
  },
71
72
  },
72
73
  increase_pledge: {
73
- description: "Increase an existing pledge",
74
- required: ["additionalAmount"],
75
- properties: { additionalAmount: { type: "number", minimum: 0 } },
74
+ description: 'Increase an existing pledge',
75
+ required: ['additionalAmount'],
76
+ properties: { additionalAmount: { type: 'number', minimum: 0 } },
76
77
  },
77
- finalize: { description: "Finalize the campaign after deadline" },
78
- claim_refund: { description: "Claim refund in failed campaign" },
78
+ finalize: { description: 'Finalize the campaign after deadline' },
79
+ claim_refund: { description: 'Claim refund in failed campaign' },
79
80
  },
80
81
  states: {
81
82
  PROPOSED: {
82
- id: "PROPOSED",
83
+ id: 'PROPOSED',
83
84
  isFinal: false,
84
85
  metadata: {
85
- label: "Proposed",
86
- description: "Campaign created but not yet open",
87
- category: "initial",
86
+ label: 'Proposed',
87
+ description: 'Campaign created but not yet open',
88
+ category: 'initial',
88
89
  },
89
90
  },
90
91
  OPEN: {
91
- id: "OPEN",
92
+ id: 'OPEN',
92
93
  isFinal: false,
93
94
  metadata: {
94
- label: "Open",
95
- description: "Accepting pledges",
96
- category: "active",
95
+ label: 'Open',
96
+ description: 'Accepting pledges',
97
+ category: 'active',
97
98
  },
98
99
  },
99
100
  FUNDED: {
100
- id: "FUNDED",
101
+ id: 'FUNDED',
101
102
  isFinal: true,
102
103
  metadata: {
103
- label: "Funded",
104
- description: "Threshold met, funds released to creator",
105
- category: "terminal",
104
+ label: 'Funded',
105
+ description: 'Threshold met, funds released to creator',
106
+ category: 'terminal',
106
107
  },
107
108
  },
108
109
  REFUNDED: {
109
- id: "REFUNDED",
110
+ id: 'REFUNDED',
110
111
  isFinal: true,
111
112
  metadata: {
112
- label: "Refunded",
113
- description: "Threshold not met, all pledges refunded",
114
- category: "terminal",
113
+ label: 'Refunded',
114
+ description: 'Threshold not met, all pledges refunded',
115
+ category: 'terminal',
115
116
  },
116
117
  },
117
118
  CANCELLED: {
118
- id: "CANCELLED",
119
+ id: 'CANCELLED',
119
120
  isFinal: true,
120
121
  metadata: {
121
- label: "Cancelled",
122
- description: "Campaign cancelled by creator",
123
- category: "terminal",
122
+ label: 'Cancelled',
123
+ description: 'Campaign cancelled by creator',
124
+ category: 'terminal',
124
125
  },
125
126
  },
126
127
  },
127
- initialState: "PROPOSED",
128
+ initialState: 'PROPOSED',
128
129
  transitions: [
129
130
  {
130
- from: "PROPOSED",
131
- to: "OPEN",
132
- eventName: "launch",
133
- guard: { "===": [{ var: "event.agent" }, { var: "state.creator" }] },
131
+ from: 'PROPOSED',
132
+ to: 'OPEN',
133
+ eventName: 'launch',
134
+ guard: (0, guards_js_1.signerIsParty)('state.creator'),
134
135
  effect: {
135
136
  merge: [
136
- { var: "state" },
137
+ { var: 'state' },
137
138
  {
138
- status: "OPEN",
139
- launchedAt: { var: "$timestamp" },
139
+ status: 'OPEN',
140
+ launchedAt: { var: '$ordinal' },
140
141
  pledges: [],
141
142
  totalPledged: 0,
142
143
  backerCount: 0,
@@ -146,78 +147,74 @@ exports.marketCrowdfundDef = (0, fiber_app_js_1.defineFiberApp)({
146
147
  dependencies: [],
147
148
  },
148
149
  {
149
- from: "PROPOSED",
150
- to: "CANCELLED",
151
- eventName: "cancel",
152
- guard: { "===": [{ var: "event.agent" }, { var: "state.creator" }] },
150
+ from: 'PROPOSED',
151
+ to: 'CANCELLED',
152
+ eventName: 'cancel',
153
+ guard: (0, guards_js_1.signerIsParty)('state.creator'),
153
154
  effect: {
154
- merge: [
155
- { var: "state" },
156
- { status: "CANCELLED", cancelledAt: { var: "$timestamp" } },
157
- ],
155
+ merge: [{ var: 'state' }, { status: 'CANCELLED', cancelledAt: { var: '$ordinal' } }],
158
156
  },
159
157
  dependencies: [],
160
158
  },
161
159
  {
162
- from: "OPEN",
163
- to: "OPEN",
164
- eventName: "pledge",
160
+ from: 'OPEN',
161
+ to: 'OPEN',
162
+ eventName: 'pledge',
165
163
  guard: {
166
164
  and: [
167
- { ">": [{ var: "event.amount" }, 0] },
168
- { "!==": [{ var: "event.agent" }, { var: "state.creator" }] },
165
+ { '>': [{ var: 'event.amount' }, 0] },
166
+ (0, guards_js_1.signerIsNotParty)('state.creator'),
169
167
  {
170
168
  or: [
171
- { "!": [{ var: "state.minPledge" }] },
172
- { ">=": [{ var: "event.amount" }, { var: "state.minPledge" }] },
169
+ { '!': [{ var: 'state.minPledge' }] },
170
+ { '>=': [{ var: 'event.amount' }, { var: 'state.minPledge' }] },
173
171
  ],
174
172
  },
175
- { "<=": [{ var: "$timestamp" }, { var: "state.deadline" }] },
173
+ { '<=': [{ var: '$ordinal' }, { var: 'state.deadline' }] },
176
174
  ],
177
175
  },
178
176
  effect: {
179
177
  merge: [
180
- { var: "state" },
178
+ { var: 'state' },
181
179
  {
182
180
  pledges: {
183
181
  cat: [
184
- { var: "state.pledges" },
182
+ { var: 'state.pledges' },
185
183
  [
186
184
  {
187
- backer: { var: "event.agent" },
188
- amount: { var: "event.amount" },
189
- rewardTier: { var: "event.rewardTier" },
190
- pledgedAt: { var: "$timestamp" },
185
+ backer: { var: 'event.agent' },
186
+ amount: { var: 'event.amount' },
187
+ rewardTier: { var: 'event.rewardTier' },
188
+ pledgedAt: { var: '$ordinal' },
191
189
  },
192
190
  ],
193
191
  ],
194
192
  },
195
193
  totalPledged: {
196
- "+": [{ var: "state.totalPledged" }, { var: "event.amount" }],
194
+ '+': [{ var: 'state.totalPledged' }, { var: 'event.amount' }],
197
195
  },
198
- backerCount: { "+": [{ var: "state.backerCount" }, 1] },
196
+ backerCount: { '+': [{ var: 'state.backerCount' }, 1] },
199
197
  },
200
198
  ],
201
199
  },
202
200
  dependencies: [],
203
201
  },
204
202
  {
205
- from: "OPEN",
206
- to: "OPEN",
207
- eventName: "increase_pledge",
203
+ from: 'OPEN',
204
+ to: 'OPEN',
205
+ eventName: 'increase_pledge',
208
206
  guard: {
209
207
  and: [
210
- { ">": [{ var: "event.additionalAmount" }, 0] },
211
- { "<=": [{ var: "$timestamp" }, { var: "state.deadline" }] },
208
+ { '>': [{ var: 'event.additionalAmount' }, 0] },
209
+ { '<=': [{ var: '$ordinal' }, { var: 'state.deadline' }] },
212
210
  {
213
- ">": [
211
+ '>': [
214
212
  {
215
- size: {
216
- filter: [
217
- { var: "state.pledges" },
218
- { "===": [{ var: "backer" }, { var: "event.agent" }] },
219
- ],
220
- },
213
+ length: [
214
+ {
215
+ filter: [{ var: 'state.pledges' }, { '===': [{ var: 'backer' }, { var: 'event.agent' }] }],
216
+ },
217
+ ],
221
218
  },
222
219
  0,
223
220
  ],
@@ -226,13 +223,10 @@ exports.marketCrowdfundDef = (0, fiber_app_js_1.defineFiberApp)({
226
223
  },
227
224
  effect: {
228
225
  merge: [
229
- { var: "state" },
226
+ { var: 'state' },
230
227
  {
231
228
  totalPledged: {
232
- "+": [
233
- { var: "state.totalPledged" },
234
- { var: "event.additionalAmount" },
235
- ],
229
+ '+': [{ var: 'state.totalPledged' }, { var: 'event.additionalAmount' }],
236
230
  },
237
231
  },
238
232
  ],
@@ -240,26 +234,23 @@ exports.marketCrowdfundDef = (0, fiber_app_js_1.defineFiberApp)({
240
234
  dependencies: [],
241
235
  },
242
236
  {
243
- from: "OPEN",
244
- to: "FUNDED",
245
- eventName: "finalize",
237
+ from: 'OPEN',
238
+ to: 'FUNDED',
239
+ eventName: 'finalize',
246
240
  guard: {
247
241
  and: [
248
- { ">=": [{ var: "state.totalPledged" }, { var: "state.threshold" }] },
249
- { ">=": [{ var: "$timestamp" }, { var: "state.deadline" }] },
242
+ { '>=': [{ var: 'state.totalPledged' }, { var: 'state.threshold' }] },
243
+ { '>=': [{ var: '$ordinal' }, { var: 'state.deadline' }] },
250
244
  ],
251
245
  },
252
246
  effect: {
253
247
  merge: [
254
- { var: "state" },
248
+ { var: 'state' },
255
249
  {
256
- status: "FUNDED",
257
- fundedAt: { var: "$timestamp" },
250
+ status: 'FUNDED',
251
+ fundedAt: { var: '$ordinal' },
258
252
  stretchGoalsReached: {
259
- filter: [
260
- { var: "state.stretchGoals" },
261
- { "<=": [{ var: "target" }, { var: "state.totalPledged" }] },
262
- ],
253
+ filter: [{ var: 'state.stretchGoals' }, { '<=': [{ var: 'target' }, { var: 'state.totalPledged' }] }],
263
254
  },
264
255
  },
265
256
  ],
@@ -267,50 +258,49 @@ exports.marketCrowdfundDef = (0, fiber_app_js_1.defineFiberApp)({
267
258
  dependencies: [],
268
259
  },
269
260
  {
270
- from: "OPEN",
271
- to: "REFUNDED",
272
- eventName: "finalize",
261
+ from: 'OPEN',
262
+ to: 'REFUNDED',
263
+ eventName: 'finalize',
273
264
  guard: {
274
265
  and: [
275
- { "<": [{ var: "state.totalPledged" }, { var: "state.threshold" }] },
276
- { ">=": [{ var: "$timestamp" }, { var: "state.deadline" }] },
266
+ { '<': [{ var: 'state.totalPledged' }, { var: 'state.threshold' }] },
267
+ { '>=': [{ var: '$ordinal' }, { var: 'state.deadline' }] },
277
268
  ],
278
269
  },
279
270
  effect: {
280
271
  merge: [
281
- { var: "state" },
272
+ { var: 'state' },
282
273
  {
283
- status: "REFUNDED",
284
- refundedAt: { var: "$timestamp" },
285
- reason: "threshold_not_met",
274
+ status: 'REFUNDED',
275
+ refundedAt: { var: '$ordinal' },
276
+ reason: 'threshold_not_met',
286
277
  },
287
278
  ],
288
279
  },
289
280
  dependencies: [],
290
281
  },
291
282
  {
292
- from: "REFUNDED",
293
- to: "REFUNDED",
294
- eventName: "claim_refund",
283
+ from: 'REFUNDED',
284
+ to: 'REFUNDED',
285
+ eventName: 'claim_refund',
295
286
  guard: {
296
287
  and: [
297
288
  {
298
- ">": [
289
+ '>': [
299
290
  {
300
- size: {
301
- filter: [
302
- { var: "state.pledges" },
303
- { "===": [{ var: "backer" }, { var: "event.agent" }] },
304
- ],
305
- },
291
+ length: [
292
+ {
293
+ filter: [{ var: 'state.pledges' }, { '===': [{ var: 'backer' }, { var: 'event.agent' }] }],
294
+ },
295
+ ],
306
296
  },
307
297
  0,
308
298
  ],
309
299
  },
310
300
  {
311
- "!": [
301
+ '!': [
312
302
  {
313
- in: [{ var: "event.agent" }, { var: "state.refundsClaimed" }],
303
+ in: [{ var: 'event.agent' }, { var: 'state.refundsClaimed' }],
314
304
  },
315
305
  ],
316
306
  },
@@ -318,10 +308,10 @@ exports.marketCrowdfundDef = (0, fiber_app_js_1.defineFiberApp)({
318
308
  },
319
309
  effect: {
320
310
  merge: [
321
- { var: "state" },
311
+ { var: 'state' },
322
312
  {
323
313
  refundsClaimed: {
324
- cat: [{ var: "state.refundsClaimed" }, [{ var: "event.agent" }]],
314
+ cat: [{ var: 'state.refundsClaimed' }, [{ var: 'event.agent' }]],
325
315
  },
326
316
  },
327
317
  ],