@@ -290,6 +290,16 @@ export const generateErc721Order = (
290290 erc20 : UserFacingERC20AssetDataSerializedV4 ,
291291 orderData : Partial < OrderStructOptionsCommon > & OrderStructOptionsCommonStrict
292292) : ERC721OrderStructSerialized => {
293+ let expiry = INFINITE_EXPIRATION_TIMESTAMP_SEC . toString ( ) ;
294+ if ( orderData . expiry ) {
295+ // If number is provided, assume given as unix timestamp
296+ if ( typeof orderData . expiry === 'number' ) {
297+ expiry = orderData . expiry . toString ( ) ;
298+ } else {
299+ // If date is provided, convert to unix timestamp
300+ expiry = getUnixTime ( orderData . expiry ) . toString ( ) ;
301+ }
302+ }
293303 const erc721Order : ERC721OrderStructSerialized = {
294304 erc721Token : nft . tokenAddress . toLowerCase ( ) ,
295305 erc721TokenId : nft . tokenId ,
@@ -311,9 +321,7 @@ export const generateErc721Order = (
311321 feeData : x . feeData ?. toString ( ) ?? '0x' ,
312322 } ;
313323 } ) ?? [ ] ,
314- expiry : orderData . expiry
315- ? getUnixTime ( orderData . expiry ) . toString ( )
316- : INFINITE_EXPIRATION_TIMESTAMP_SEC . toString ( ) ,
324+ expiry : expiry ,
317325 nonce : orderData . nonce ?. toString ( ) ?? generateRandomV4OrderNonce ( ) ,
318326 taker : orderData . taker ?. toLowerCase ( ) ?? NULL_ADDRESS ,
319327 } ;
@@ -326,6 +334,16 @@ export const generateErc1155Order = (
326334 erc20 : UserFacingERC20AssetDataSerializedV4 ,
327335 orderData : Partial < OrderStructOptionsCommon > & OrderStructOptionsCommonStrict
328336) : ERC1155OrderStructSerialized => {
337+ let expiry = INFINITE_EXPIRATION_TIMESTAMP_SEC . toString ( ) ;
338+ if ( orderData . expiry ) {
339+ // If number is provided, assume given as unix timestamp
340+ if ( typeof orderData . expiry === 'number' ) {
341+ expiry = orderData . expiry . toString ( ) ;
342+ } else {
343+ // If date is provided, convert to unix timestamp
344+ expiry = getUnixTime ( orderData . expiry ) . toString ( ) ;
345+ }
346+ }
329347 const erc1155Order : ERC1155OrderStructSerialized = {
330348 erc1155Token : nft . tokenAddress . toLowerCase ( ) ,
331349 erc1155TokenId : nft . tokenId ,
@@ -348,9 +366,7 @@ export const generateErc1155Order = (
348366 feeData : fee . feeData ?. toString ( ) ?? '0x' ,
349367 } ;
350368 } ) ?? [ ] ,
351- expiry : orderData . expiry
352- ? getUnixTime ( orderData . expiry ) . toString ( )
353- : INFINITE_EXPIRATION_TIMESTAMP_SEC . toString ( ) ,
369+ expiry : expiry ,
354370 nonce : orderData . nonce ?. toString ( ) ?? generateRandomV4OrderNonce ( ) ,
355371 taker : orderData . taker ?. toLowerCase ( ) ?? NULL_ADDRESS ,
356372 } ;
0 commit comments