@polymarket/clob-client-v2 1.0.0 → 1.0.2

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 (148) hide show
  1. package/dist/index.cjs +2482 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/index.d.cts +1001 -0
  4. package/dist/index.d.ts +1001 -8
  5. package/dist/index.js +2424 -8
  6. package/dist/index.js.map +1 -1
  7. package/package.json +12 -5
  8. package/dist/client.d.ts +0 -139
  9. package/dist/client.js +0 -973
  10. package/dist/client.js.map +0 -1
  11. package/dist/config.d.ts +0 -14
  12. package/dist/config.js +0 -32
  13. package/dist/config.js.map +0 -1
  14. package/dist/constants.d.ts +0 -6
  15. package/dist/constants.js +0 -10
  16. package/dist/constants.js.map +0 -1
  17. package/dist/endpoints.d.ts +0 -60
  18. package/dist/endpoints.js +0 -75
  19. package/dist/endpoints.js.map +0 -1
  20. package/dist/errors.d.ts +0 -7
  21. package/dist/errors.js +0 -13
  22. package/dist/errors.js.map +0 -1
  23. package/dist/headers/index.d.ts +0 -4
  24. package/dist/headers/index.js +0 -38
  25. package/dist/headers/index.js.map +0 -1
  26. package/dist/http-helpers/index.d.ts +0 -18
  27. package/dist/http-helpers/index.js +0 -124
  28. package/dist/http-helpers/index.js.map +0 -1
  29. package/dist/order-builder/helpers/buildMarketOrderCreationArgs.d.ts +0 -5
  30. package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js +0 -37
  31. package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js.map +0 -1
  32. package/dist/order-builder/helpers/buildOrder.d.ts +0 -14
  33. package/dist/order-builder/helpers/buildOrder.js +0 -29
  34. package/dist/order-builder/helpers/buildOrder.js.map +0 -1
  35. package/dist/order-builder/helpers/buildOrderCreationArgs.d.ts +0 -5
  36. package/dist/order-builder/helpers/buildOrderCreationArgs.js +0 -39
  37. package/dist/order-builder/helpers/buildOrderCreationArgs.js.map +0 -1
  38. package/dist/order-builder/helpers/calculateBuyMarketPrice.d.ts +0 -8
  39. package/dist/order-builder/helpers/calculateBuyMarketPrice.js +0 -34
  40. package/dist/order-builder/helpers/calculateBuyMarketPrice.js.map +0 -1
  41. package/dist/order-builder/helpers/calculateSellMarketPrice.d.ts +0 -8
  42. package/dist/order-builder/helpers/calculateSellMarketPrice.js +0 -34
  43. package/dist/order-builder/helpers/calculateSellMarketPrice.js.map +0 -1
  44. package/dist/order-builder/helpers/createMarketOrder.d.ts +0 -5
  45. package/dist/order-builder/helpers/createMarketOrder.js +0 -33
  46. package/dist/order-builder/helpers/createMarketOrder.js.map +0 -1
  47. package/dist/order-builder/helpers/createOrder.d.ts +0 -5
  48. package/dist/order-builder/helpers/createOrder.js +0 -33
  49. package/dist/order-builder/helpers/createOrder.js.map +0 -1
  50. package/dist/order-builder/helpers/getMarketOrderRawAmounts.d.ts +0 -6
  51. package/dist/order-builder/helpers/getMarketOrderRawAmounts.js +0 -37
  52. package/dist/order-builder/helpers/getMarketOrderRawAmounts.js.map +0 -1
  53. package/dist/order-builder/helpers/getOrderRawAmounts.d.ts +0 -6
  54. package/dist/order-builder/helpers/getOrderRawAmounts.js +0 -37
  55. package/dist/order-builder/helpers/getOrderRawAmounts.js.map +0 -1
  56. package/dist/order-builder/helpers/index.d.ts +0 -10
  57. package/dist/order-builder/helpers/index.js +0 -11
  58. package/dist/order-builder/helpers/index.js.map +0 -1
  59. package/dist/order-builder/helpers/roundingConfig.d.ts +0 -2
  60. package/dist/order-builder/helpers/roundingConfig.js +0 -23
  61. package/dist/order-builder/helpers/roundingConfig.js.map +0 -1
  62. package/dist/order-builder/index.d.ts +0 -1
  63. package/dist/order-builder/index.js +0 -2
  64. package/dist/order-builder/index.js.map +0 -1
  65. package/dist/order-builder/orderBuilder.d.ts +0 -28
  66. package/dist/order-builder/orderBuilder.js +0 -52
  67. package/dist/order-builder/orderBuilder.js.map +0 -1
  68. package/dist/order-utils/abi/ExchangeV1.d.ts +0 -1444
  69. package/dist/order-utils/abi/ExchangeV1.js +0 -1853
  70. package/dist/order-utils/abi/ExchangeV1.js.map +0 -1
  71. package/dist/order-utils/abi/ExchangeV2.d.ts +0 -1259
  72. package/dist/order-utils/abi/ExchangeV2.js +0 -1614
  73. package/dist/order-utils/abi/ExchangeV2.js.map +0 -1
  74. package/dist/order-utils/exchangeOrderBuilderV1.d.ts +0 -42
  75. package/dist/order-utils/exchangeOrderBuilderV1.js +0 -148
  76. package/dist/order-utils/exchangeOrderBuilderV1.js.map +0 -1
  77. package/dist/order-utils/exchangeOrderBuilderV2.d.ts +0 -42
  78. package/dist/order-utils/exchangeOrderBuilderV2.js +0 -119
  79. package/dist/order-utils/exchangeOrderBuilderV2.js.map +0 -1
  80. package/dist/order-utils/index.d.ts +0 -2711
  81. package/dist/order-utils/index.js +0 -13
  82. package/dist/order-utils/index.js.map +0 -1
  83. package/dist/order-utils/model/abi.d.ts +0 -21
  84. package/dist/order-utils/model/abi.js +0 -2
  85. package/dist/order-utils/model/abi.js.map +0 -1
  86. package/dist/order-utils/model/ctfExchangeV1TypedData.d.ts +0 -6
  87. package/dist/order-utils/model/ctfExchangeV1TypedData.js +0 -17
  88. package/dist/order-utils/model/ctfExchangeV1TypedData.js.map +0 -1
  89. package/dist/order-utils/model/ctfExchangeV2TypedData.d.ts +0 -6
  90. package/dist/order-utils/model/ctfExchangeV2TypedData.js +0 -16
  91. package/dist/order-utils/model/ctfExchangeV2TypedData.js.map +0 -1
  92. package/dist/order-utils/model/eip712.d.ts +0 -29
  93. package/dist/order-utils/model/eip712.js +0 -7
  94. package/dist/order-utils/model/eip712.js.map +0 -1
  95. package/dist/order-utils/model/order.d.ts +0 -2
  96. package/dist/order-utils/model/order.js +0 -2
  97. package/dist/order-utils/model/order.js.map +0 -1
  98. package/dist/order-utils/model/orderDataV1.d.ts +0 -111
  99. package/dist/order-utils/model/orderDataV1.js +0 -2
  100. package/dist/order-utils/model/orderDataV1.js.map +0 -1
  101. package/dist/order-utils/model/orderDataV2.d.ts +0 -110
  102. package/dist/order-utils/model/orderDataV2.js +0 -2
  103. package/dist/order-utils/model/orderDataV2.js.map +0 -1
  104. package/dist/order-utils/model/side.d.ts +0 -4
  105. package/dist/order-utils/model/side.js +0 -6
  106. package/dist/order-utils/model/side.js.map +0 -1
  107. package/dist/order-utils/model/signatureTypeV1.d.ts +0 -14
  108. package/dist/order-utils/model/signatureTypeV1.js +0 -16
  109. package/dist/order-utils/model/signatureTypeV1.js.map +0 -1
  110. package/dist/order-utils/model/signatureTypeV2.d.ts +0 -18
  111. package/dist/order-utils/model/signatureTypeV2.js +0 -20
  112. package/dist/order-utils/model/signatureTypeV2.js.map +0 -1
  113. package/dist/order-utils/utils.d.ts +0 -1
  114. package/dist/order-utils/utils.js +0 -4
  115. package/dist/order-utils/utils.js.map +0 -1
  116. package/dist/signing/constants.d.ts +0 -14
  117. package/dist/signing/constants.js +0 -16
  118. package/dist/signing/constants.js.map +0 -1
  119. package/dist/signing/eip712.d.ts +0 -9
  120. package/dist/signing/eip712.js +0 -40
  121. package/dist/signing/eip712.js.map +0 -1
  122. package/dist/signing/hmac.d.ts +0 -9
  123. package/dist/signing/hmac.js +0 -27
  124. package/dist/signing/hmac.js.map +0 -1
  125. package/dist/signing/index.d.ts +0 -3
  126. package/dist/signing/index.js +0 -4
  127. package/dist/signing/index.js.map +0 -1
  128. package/dist/signing/signer.d.ts +0 -22
  129. package/dist/signing/signer.js +0 -50
  130. package/dist/signing/signer.js.map +0 -1
  131. package/dist/types/clob.d.ts +0 -398
  132. package/dist/types/clob.js +0 -28
  133. package/dist/types/clob.js.map +0 -1
  134. package/dist/types/index.d.ts +0 -4
  135. package/dist/types/index.js +0 -5
  136. package/dist/types/index.js.map +0 -1
  137. package/dist/types/ordersV1.d.ts +0 -108
  138. package/dist/types/ordersV1.js +0 -24
  139. package/dist/types/ordersV1.js.map +0 -1
  140. package/dist/types/ordersV2.d.ts +0 -99
  141. package/dist/types/ordersV2.js +0 -25
  142. package/dist/types/ordersV2.js.map +0 -1
  143. package/dist/types/unifiedOrder.d.ts +0 -38
  144. package/dist/types/unifiedOrder.js +0 -9
  145. package/dist/types/unifiedOrder.js.map +0 -1
  146. package/dist/utilities.d.ts +0 -13
  147. package/dist/utilities.js +0 -47
  148. package/dist/utilities.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExchangeV2.js","sourceRoot":"","sources":["../../../src/order-utils/abi/ExchangeV2.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG;IACrB;QACC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,2BAA2B;gBACzC,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,KAAK;wBACX,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,qBAAqB;wBAC3B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;iBACD;aACD;SACD;QACD,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,QAAQ;aACtB;YACD;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,QAAQ;aACtB;YACD;gBACC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,QAAQ;aACtB;YACD;gBACC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,WAAW;aACzB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,oBAAoB;gBAClC,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,MAAM;wBACZ,YAAY,EAAE,MAAM;qBACpB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;iBACD;aACD;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,cAAc;gBAC5B,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,WAAW;qBACzB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,oBAAoB;qBAClC;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,OAAO;qBACrB;iBACD;aACD;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,4BAA4B;QAClC,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,MAAM;aACpB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,MAAM;aACpB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,MAAM;aACpB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,cAAc;gBAC5B,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,WAAW;qBACzB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,oBAAoB;qBAClC;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,OAAO;qBACrB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,gBAAgB;gBAC9B,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,WAAW;qBACzB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,oBAAoB;qBAClC;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,OAAO;qBACrB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,WAAW;aACzB;YACD;gBACC,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,WAAW;aACzB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,WAAW;aACzB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,WAAW;aACzB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,OAAO;aACrB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,QAAQ;aACtB;SACD;QACD,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,OAAO;aACrB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,QAAQ;aACtB;SACD;QACD,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,MAAM;aACpB;YACD;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,MAAM;aACpB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,cAAc;gBAC5B,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,WAAW;qBACzB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,oBAAoB;qBAClC;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,OAAO;qBACrB;iBACD;aACD;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,2BAA2B;QACjC,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,QAAQ;aACtB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,MAAM;aACpB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC7B;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,cAAc;gBAC5B,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,WAAW;qBACzB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,oBAAoB;qBAClC;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,OAAO;qBACrB;iBACD;aACD;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,cAAc;gBAC5B,UAAU,EAAE;oBACX;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,WAAW;qBACzB;oBACD;wBACC,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,oBAAoB;qBAClC;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACvB;oBACD;wBACC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,OAAO;qBACrB;iBACD;aACD;SACD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,MAAM;KACvB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,oBAAoB;gBAC1B,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,WAAW;aACzB;YACD;gBACC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,6BAA6B;QACnC,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,WAAW;aACzB;YACD;gBACC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,+BAA+B;QACrC,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;YACD;gBACC,IAAI,EAAE,qBAAqB;gBAC3B,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE;YACP;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACvB;SACD;QACD,SAAS,EAAE,KAAK;KAChB;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mCAAmC;QACzC,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,EAAE;KACV;IACD;QACC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,EAAE;KACV;CACQ,CAAC;AAEX,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -1,42 +0,0 @@
1
- import { type ClobSigner } from "../signing/signer.js";
2
- import { type EIP712TypedData } from "./model/eip712.js";
3
- import type { OrderHash, OrderSignature } from "./model/order.js";
4
- import type { OrderDataV1, OrderV1, SignedOrderV1 } from "./model/orderDataV1.js";
5
- import { generateOrderSalt } from "./utils.js";
6
- export declare class ExchangeOrderBuilderV1 {
7
- private readonly contractAddress;
8
- private readonly chainId;
9
- private readonly signer;
10
- private readonly generateSalt;
11
- constructor(contractAddress: string, chainId: number, signer: ClobSigner, generateSalt?: typeof generateOrderSalt);
12
- /**
13
- * build an order object including the signature.
14
- * @param orderData
15
- * @returns a SignedOrder object (order + signature)
16
- */
17
- buildSignedOrder(orderData: OrderDataV1): Promise<SignedOrderV1>;
18
- /**
19
- * Creates an Order object from order data.
20
- * @param OrderData
21
- * @returns a Order object (not signed)
22
- */
23
- buildOrder({ maker, taker, tokenId, makerAmount, takerAmount, side, feeRateBps, nonce, signer, expiration, signatureType, }: OrderDataV1): Promise<OrderV1>;
24
- /**
25
- * Parses an Order object to EIP712 typed data
26
- * @param order
27
- * @returns a EIP712TypedData object
28
- */
29
- buildOrderTypedData(order: OrderV1): EIP712TypedData;
30
- /**
31
- * Generates order's signature from a EIP712TypedData object + the signer address
32
- * @param typedData
33
- * @returns a OrderSignature that is an string
34
- */
35
- buildOrderSignature(typedData: EIP712TypedData): Promise<OrderSignature>;
36
- /**
37
- * Generates the hash of the order from a EIP712TypedData object.
38
- * @param orderTypedData
39
- * @returns a OrderHash that is an string
40
- */
41
- buildOrderHash(orderTypedData: EIP712TypedData): OrderHash;
42
- }
@@ -1,148 +0,0 @@
1
- import { hashTypedData } from "viem";
2
- import { getSignerAddress, signTypedDataWithSigner } from "../signing/signer.js";
3
- import { CTF_EXCHANGE_V1_DOMAIN_NAME, CTF_EXCHANGE_V1_DOMAIN_VERSION, CTF_EXCHANGE_V1_ORDER_STRUCT, } from "./model/ctfExchangeV1TypedData.js";
4
- import { EIP712_DOMAIN } from "./model/eip712.js";
5
- import { SignatureTypeV1 } from "./model/signatureTypeV1.js";
6
- import { generateOrderSalt } from "./utils.js";
7
- const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
8
- export class ExchangeOrderBuilderV1 {
9
- contractAddress;
10
- chainId;
11
- signer;
12
- generateSalt;
13
- constructor(contractAddress, chainId, signer, generateSalt = generateOrderSalt) {
14
- this.contractAddress = contractAddress;
15
- this.chainId = chainId;
16
- this.signer = signer;
17
- this.generateSalt = generateSalt;
18
- }
19
- /**
20
- * build an order object including the signature.
21
- * @param orderData
22
- * @returns a SignedOrder object (order + signature)
23
- */
24
- async buildSignedOrder(orderData) {
25
- const order = await this.buildOrder(orderData);
26
- const orderTypedData = this.buildOrderTypedData(order);
27
- const orderSignature = await this.buildOrderSignature(orderTypedData);
28
- return {
29
- ...order,
30
- signature: orderSignature,
31
- };
32
- }
33
- /**
34
- * Creates an Order object from order data.
35
- * @param OrderData
36
- * @returns a Order object (not signed)
37
- */
38
- async buildOrder({ maker, taker, tokenId, makerAmount, takerAmount, side, feeRateBps, nonce, signer, expiration, signatureType, }) {
39
- if (!signer) {
40
- signer = maker;
41
- }
42
- const signerAddress = await getSignerAddress(this.signer);
43
- if (signer !== signerAddress) {
44
- throw new Error("signer does not match");
45
- }
46
- if (!expiration) {
47
- expiration = "0";
48
- }
49
- if (!signatureType) {
50
- // Default to EOA 712 sig type
51
- signatureType = SignatureTypeV1.EOA;
52
- }
53
- let takerAddress;
54
- if (typeof taker !== "undefined" && taker) {
55
- takerAddress = taker;
56
- }
57
- else {
58
- takerAddress = ZERO_ADDRESS;
59
- }
60
- let feeRateBpsResolved;
61
- if (typeof feeRateBps !== "undefined" && feeRateBps) {
62
- feeRateBpsResolved = feeRateBps.toString();
63
- }
64
- else {
65
- feeRateBpsResolved = "0";
66
- }
67
- let nonceResolved;
68
- if (typeof nonce !== "undefined" && nonce) {
69
- nonceResolved = nonce.toString();
70
- }
71
- else {
72
- nonceResolved = "0";
73
- }
74
- return {
75
- salt: this.generateSalt(),
76
- maker,
77
- signer,
78
- taker: takerAddress,
79
- tokenId,
80
- makerAmount,
81
- takerAmount,
82
- expiration,
83
- nonce: nonceResolved,
84
- feeRateBps: feeRateBpsResolved,
85
- side,
86
- signatureType,
87
- };
88
- }
89
- /**
90
- * Parses an Order object to EIP712 typed data
91
- * @param order
92
- * @returns a EIP712TypedData object
93
- */
94
- buildOrderTypedData(order) {
95
- return {
96
- primaryType: "Order",
97
- types: {
98
- EIP712Domain: EIP712_DOMAIN,
99
- Order: CTF_EXCHANGE_V1_ORDER_STRUCT,
100
- },
101
- domain: {
102
- name: CTF_EXCHANGE_V1_DOMAIN_NAME,
103
- version: CTF_EXCHANGE_V1_DOMAIN_VERSION,
104
- chainId: this.chainId,
105
- verifyingContract: this.contractAddress,
106
- },
107
- message: {
108
- salt: order.salt,
109
- maker: order.maker,
110
- signer: order.signer,
111
- taker: order.taker,
112
- tokenId: order.tokenId,
113
- makerAmount: order.makerAmount,
114
- takerAmount: order.takerAmount,
115
- expiration: order.expiration,
116
- nonce: order.nonce,
117
- feeRateBps: order.feeRateBps,
118
- side: order.side === "BUY" ? 0 : 1,
119
- signatureType: order.signatureType,
120
- },
121
- };
122
- }
123
- /**
124
- * Generates order's signature from a EIP712TypedData object + the signer address
125
- * @param typedData
126
- * @returns a OrderSignature that is an string
127
- */
128
- buildOrderSignature(typedData) {
129
- delete typedData.types.EIP712Domain;
130
- return signTypedDataWithSigner({
131
- signer: this.signer,
132
- domain: typedData.domain,
133
- types: typedData.types,
134
- value: typedData.message,
135
- primaryType: typedData.primaryType,
136
- });
137
- }
138
- /**
139
- * Generates the hash of the order from a EIP712TypedData object.
140
- * @param orderTypedData
141
- * @returns a OrderHash that is an string
142
- */
143
- buildOrderHash(orderTypedData) {
144
- const digest = hashTypedData(orderTypedData);
145
- return digest;
146
- }
147
- }
148
- //# sourceMappingURL=exchangeOrderBuilderV1.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exchangeOrderBuilderV1.js","sourceRoot":"","sources":["../../src/order-utils/exchangeOrderBuilderV1.ts"],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- import { type ClobSigner } from "../signing/signer.js";
2
- import { type EIP712TypedData } from "./model/eip712.js";
3
- import type { OrderHash, OrderSignature } from "./model/order.js";
4
- import type { OrderDataV2, OrderV2, SignedOrderV2 } from "./model/orderDataV2.js";
5
- import { generateOrderSalt } from "./utils.js";
6
- export declare class ExchangeOrderBuilderV2 {
7
- private readonly contractAddress;
8
- private readonly chainId;
9
- private readonly signer;
10
- private readonly generateSalt;
11
- constructor(contractAddress: string, chainId: number, signer: ClobSigner, generateSalt?: typeof generateOrderSalt);
12
- /**
13
- * build an order object including the signature.
14
- * @param orderData
15
- * @returns a SignedOrder object (order + signature)
16
- */
17
- buildSignedOrder(orderData: OrderDataV2): Promise<SignedOrderV2>;
18
- /**
19
- * Creates an Order object from order data.
20
- * @param OrderData
21
- * @returns a Order object (not signed)
22
- */
23
- buildOrder({ maker, tokenId, makerAmount, takerAmount, side, signer, signatureType, timestamp, metadata, builder, expiration, }: OrderDataV2): Promise<OrderV2>;
24
- /**
25
- * Parses an Order object to EIP712 typed data
26
- * @param order
27
- * @returns a EIP712TypedData object
28
- */
29
- buildOrderTypedData(order: OrderV2): EIP712TypedData;
30
- /**
31
- * Generates order's signature from a EIP712TypedData object + the signer address
32
- * @param typedData
33
- * @returns a OrderSignature that is an string
34
- */
35
- buildOrderSignature(typedData: EIP712TypedData): Promise<OrderSignature>;
36
- /**
37
- * Generates the hash of the order from a EIP712TypedData object.
38
- * @param orderTypedData
39
- * @returns a OrderHash that is an string
40
- */
41
- buildOrderHash(orderTypedData: EIP712TypedData): OrderHash;
42
- }
@@ -1,119 +0,0 @@
1
- import { hashTypedData } from "viem";
2
- import { bytes32Zero } from "../constants.js";
3
- import { getSignerAddress, signTypedDataWithSigner } from "../signing/signer.js";
4
- import { CTF_EXCHANGE_V2_DOMAIN_NAME, CTF_EXCHANGE_V2_DOMAIN_VERSION, CTF_EXCHANGE_V2_ORDER_STRUCT, } from "./model/ctfExchangeV2TypedData.js";
5
- import { EIP712_DOMAIN } from "./model/eip712.js";
6
- import { SignatureTypeV2 } from "./model/signatureTypeV2.js";
7
- import { generateOrderSalt } from "./utils.js";
8
- export class ExchangeOrderBuilderV2 {
9
- contractAddress;
10
- chainId;
11
- signer;
12
- generateSalt;
13
- constructor(contractAddress, chainId, signer, generateSalt = generateOrderSalt) {
14
- this.contractAddress = contractAddress;
15
- this.chainId = chainId;
16
- this.signer = signer;
17
- this.generateSalt = generateSalt;
18
- }
19
- /**
20
- * build an order object including the signature.
21
- * @param orderData
22
- * @returns a SignedOrder object (order + signature)
23
- */
24
- async buildSignedOrder(orderData) {
25
- const order = await this.buildOrder(orderData);
26
- const orderTypedData = this.buildOrderTypedData(order);
27
- const orderSignature = await this.buildOrderSignature(orderTypedData);
28
- return {
29
- ...order,
30
- signature: orderSignature,
31
- };
32
- }
33
- /**
34
- * Creates an Order object from order data.
35
- * @param OrderData
36
- * @returns a Order object (not signed)
37
- */
38
- async buildOrder({ maker, tokenId, makerAmount, takerAmount, side, signer, signatureType, timestamp, metadata, builder, expiration, }) {
39
- if (!signer) {
40
- signer = maker;
41
- }
42
- const signerAddress = await getSignerAddress(this.signer);
43
- if (signer !== signerAddress) {
44
- throw new Error("signer does not match");
45
- }
46
- return {
47
- salt: this.generateSalt(),
48
- maker,
49
- signer,
50
- tokenId,
51
- makerAmount,
52
- takerAmount,
53
- side,
54
- signatureType: signatureType ?? SignatureTypeV2.EOA,
55
- metadata: metadata ?? bytes32Zero,
56
- builder: builder ?? bytes32Zero,
57
- timestamp: timestamp ?? Date.now().toString(),
58
- expiration: expiration ?? "0",
59
- };
60
- }
61
- /**
62
- * Parses an Order object to EIP712 typed data
63
- * @param order
64
- * @returns a EIP712TypedData object
65
- */
66
- buildOrderTypedData(order) {
67
- return {
68
- primaryType: "Order",
69
- types: {
70
- EIP712Domain: EIP712_DOMAIN,
71
- Order: CTF_EXCHANGE_V2_ORDER_STRUCT,
72
- },
73
- domain: {
74
- name: CTF_EXCHANGE_V2_DOMAIN_NAME,
75
- version: CTF_EXCHANGE_V2_DOMAIN_VERSION,
76
- chainId: this.chainId,
77
- verifyingContract: this.contractAddress,
78
- },
79
- message: {
80
- salt: order.salt,
81
- maker: order.maker,
82
- signer: order.signer,
83
- tokenId: order.tokenId,
84
- makerAmount: order.makerAmount,
85
- takerAmount: order.takerAmount,
86
- timestamp: order.timestamp,
87
- side: order.side === "BUY" ? 0 : 1,
88
- signatureType: order.signatureType,
89
- metadata: order.metadata,
90
- builder: order.builder,
91
- },
92
- };
93
- }
94
- /**
95
- * Generates order's signature from a EIP712TypedData object + the signer address
96
- * @param typedData
97
- * @returns a OrderSignature that is an string
98
- */
99
- buildOrderSignature(typedData) {
100
- delete typedData.types.EIP712Domain;
101
- return signTypedDataWithSigner({
102
- signer: this.signer,
103
- domain: typedData.domain,
104
- types: typedData.types,
105
- value: typedData.message,
106
- primaryType: typedData.primaryType,
107
- });
108
- }
109
- /**
110
- * Generates the hash of the order from a EIP712TypedData object.
111
- * @param orderTypedData
112
- * @returns a OrderHash that is an string
113
- */
114
- buildOrderHash(orderTypedData) {
115
- const digest = hashTypedData(orderTypedData);
116
- return digest;
117
- }
118
- }
119
- //# sourceMappingURL=exchangeOrderBuilderV2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exchangeOrderBuilderV2.js","sourceRoot":"","sources":["../../src/order-utils/exchangeOrderBuilderV2.ts"],"names":[],"mappings":"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"}