@@ -13,6 +13,7 @@ import {Enum} from "safe/common/Enum.sol";
1313
1414// Composable CoW
1515import {IConditionalOrder, ComposableCoW} from "composable-cow/src/ComposableCoW.sol " ;
16+ import {IValueFactory} from "composable-cow/src/interfaces/IValueFactory.sol " ;
1617
1718// Polyswap
1819import {PolyswapOrder} from "../src/PolyswapOrder.sol " ;
@@ -37,10 +38,10 @@ contract SubmitSingleOrder is Script {
3738 sellToken: sellToken,
3839 buyToken: buyToken,
3940 receiver: address (0 ),
40- sellAmount: 1e17 , // 0.1 sell token
41- minBuyAmount: 90e16 , // 0.09 buy token
41+ sellAmount: 100000 , // 0.1 sell token
42+ minBuyAmount: 80000 , // 0.08 buy token
4243 t0: block .timestamp ,
43- t: block .timestamp + 30 days,
44+ t: block .timestamp + 1 days,
4445 polymarketOrderHash: polymarketOrderHash
4546 });
4647
@@ -50,8 +51,7 @@ contract SubmitSingleOrder is Script {
5051 staticInput: abi.encode (polyswapOrder)
5152 });
5253
53- // bytes32 orderHash = composableCow.hash(params);
54- // console.logBytes32(orderHash);
54+ console.logBytes32 (composableCow.hash (params));
5555
5656 vm.startBroadcast (deployerPrivateKey);
5757
@@ -60,9 +60,11 @@ contract SubmitSingleOrder is Script {
6060 address (composableCow),
6161 0 ,
6262 abi.encodeCall (
63- composableCow.create ,
63+ composableCow.createWithContext ,
6464 (
6565 params,
66+ IValueFactory (0x52eD56Da04309Aca4c3FECC595298d80C2f16BAc ), // TimestampValueFactory
67+ bytes ("" ),
6668 true
6769 )
6870 ),
@@ -73,3 +75,28 @@ contract SubmitSingleOrder is Script {
7375 vm.stopBroadcast ();
7476 }
7577}
78+
79+ contract ApproveSellTokenOnSafe is Script {
80+ using SafeLib for Safe;
81+
82+ function run () external {
83+ uint256 deployerPrivateKey = vm.envUint ("PRIVATE_KEY " );
84+ Safe safe = Safe (payable (vm.envAddress ("SAFE " )));
85+ IERC20 sellToken = IERC20 (vm.envAddress ("SELL_TOKEN " ));
86+ address spender = vm.envAddress ("SPENDER " );
87+
88+ safe.executeSingleOwner (
89+ address (sellToken),
90+ 0 ,
91+ abi.encodeCall (
92+ sellToken.approve,
93+ (
94+ spender,
95+ type (uint256 ).max
96+ )
97+ ),
98+ Enum.Operation.Call,
99+ vm.addr (deployerPrivateKey)
100+ );
101+ }
102+ }
0 commit comments