placeLimitOrder function

MoveCallBuilder placeLimitOrder({
  1. dynamic arguments,
  2. String? package,
  3. List<String> typeArguments = const [],
  4. Map<String, dynamic>? config,
})

Place a DeepBook spot limit order for an Account with an active session.

Implementation

MoveCallBuilder placeLimitOrder(
    {dynamic arguments,
    String? package,
    List<String> typeArguments = const [],
    Map<String, dynamic>? config}) {
  final packageAddress = package ??
      (config?['sessionsPackageId'] as String?) ??
      '@local-pkg/deepbook_sessions';
  return (tx) => tx.moveCall(
        '$packageAddress::sessions::place_limit_order',
        typeArguments: typeArguments,
        arguments: normalizeMoveArguments(
            tx,
            withConfigDefaults(
                arguments, config, const {'sessionsConfig': 'sessionsConfig'}),
            [
              null,
              null,
              null,
              null,
              null,
              'u64',
              'u8',
              'u8',
              'u64',
              'u64',
              'bool',
              'bool',
              'u64',
              '0x2::accumulator::AccumulatorRoot',
              '0x2::clock::Clock'
            ],
            [
              'pool',
              'deepbookRegistry',
              'accountRegistry',
              'wrapper',
              'sessionsConfig',
              'clientOrderId',
              'orderType',
              'selfMatchingOption',
              'price',
              'quantity',
              'isBid',
              'payWithDeep',
              'expireTimestamp'
            ]),
      );
}