Skip to content
This repository has been archived by the owner on Jul 31, 2023. It is now read-only.

Implement Fixed Price Contract on asset details page #216

Merged
merged 64 commits into from
Mar 10, 2021
Merged

Conversation

mycodecrafting
Copy link
Collaborator

Implement Fixed Price Contract on asset details page. Closes #121

emmanueldenloye and others added 30 commits February 4, 2021 22:31
The spec only requires that the 'description' and 'interfaces' fields
to be defined IIRC
…await-in-test

replaced nested code with async/await syntax
…ontract

Remove update operators from market contract
…n-contract-origination

populate tzip-16 contract data when contracts are originated
feat: Upload artifact files on token creation submit
also put some important code into beforeEach block
…re-contracts

take out tzip12 contracts and related files/tests
fa2_insufficient_balance should be fa2_token_undefined
Philip Diaz and others added 12 commits February 23, 2021 16:39
* Fix issue where already connected wallets would not auto reconnect

* fix: Fix redux warning, resolve disconnect issue, fix FOUC on reconnect

* refactor: Move wallet reconnect attempt state out of component and into system SDK

Co-authored-by: Philip Diaz <[email protected]>
# Conflicts:
#	README.md
#	client/package.json
#	client/src/reducer/async/actions.ts
#	client/src/reducer/slices/notifications.ts
#	contracts/bin/fa2_multi_nft_asset.tz
#	contracts/bin/fa2_multi_nft_faucet.tz
#	contracts/bin/fa2_nft_factory.tz
#	contracts/bin/fixed_price_sale_market.tz
#	contracts/bin/fixed_price_sale_market_tez.tz
#	contracts/jest.config.js
#	contracts/ligo/fa2/fa2_interface.mligo
#	contracts/ligo/fa2_clients/README.md
#	contracts/ligo/fa2_modules/README.md
#	contracts/ligo/src/fa2_multi_nft_asset.mligo
#	contracts/ligo/src/fa2_multi_nft_faucet.mligo
#	contracts/ligo/src/fa2_multi_nft_manager.mligo
#	contracts/ligo/src/fa2_multi_nft_token.mligo
#	contracts/ligo/src/fa2_nft_factory.mligo
#	contracts/ligo/src/fa2_nft_factory.template.mligo
#	contracts/ligo/src/fixed_price_sale_market.mligo
#	contracts/ligo/src/fixed_price_sale_market_tez.mligo
#	contracts/package.json
#	contracts/src/bootstrap-contracts-config.ts
#	contracts/src/compile-contracts.ts
#	contracts/src/fa2-interface.ts
#	contracts/src/nft-contracts.ts
#	contracts/test/bootstrap-sandbox.ts
#	contracts/test/nft-contracts.test.ts
#	contracts/test/nft-factory.test.ts
#	contracts/yarn.lock
#	flextesa/start-sandbox.sh
#	package.json
@ccarella
Copy link

ccarella commented Mar 8, 2021

3 bug reports:

1. Page show incorrect state after successful purchase & when cancelling NFT sale.
After you successfully buy and nft the page you are on still says "For Sale" and the button "Buy Now".
Either the page should refresh or they should be redirected to the Collections page on success.

This is also true if you cancel an NFT sale. You wind up in a state where your NFT looks like its still available for sale.

2. UX enhancement for users who have not connected a wallet and try to purchase an NFT

If a user arrives on an NFT for sale and has not connected their wallet and try to buy the NFT, it shows them checkout. When the user tries to checkout it displays an error. "Could not list token: no wallet connected"

When a user who has not connected their wallet lands on the site and tries to buy the NFT it should show them the Beacon connect wallet screen.

3. Transfer Token UI does not accept user input

If I start on an NFT page and click the 3 dots menu in the upper right and select Transfer, the modal that pops up does not let me paste or type in an address, preventing transfer.

@mycodecrafting
Copy link
Collaborator Author

3 bug reports:

1. Page show incorrect state after successful purchase & when cancelling NFT sale.
After you successfully buy and nft the page you are on still says "For Sale" and the button "Buy Now".
Either the page should refresh or they should be redirected to the Collections page on success.

This is also true if you cancel an NFT sale. You wind up in a state where your NFT looks like its still available for sale.

2. UX enhancement for users who have not connected a wallet and try to purchase an NFT

If a user arrives on an NFT for sale and has not connected their wallet and try to buy the NFT, it shows them checkout. When the user tries to checkout it displays an error. "Could not list token: no wallet connected"

When a user who has not connected their wallet lands on the site and tries to buy the NFT it should show them the Beacon connect wallet screen.

3. Transfer Token UI does not accept user input

If I start on an NFT page and click the 3 dots menu in the upper right and select Transfer, the modal that pops up does not let me paste or type in an address, preventing transfer.

Bugs 1 and 2 fixed.

@lambdahands lambdahands merged commit 9864539 into develop Mar 10, 2021
lambdahands pushed a commit that referenced this pull request Mar 10, 2021
commit e81669d
Merge: 9864539 31727b0
Author: Philip Diaz <[email protected]>
Date:   Wed Mar 10 14:59:33 2021 -0500

    Merge remote-tracking branch 'origin/v0.2.1' into develop

commit 9864539
Author: Joshua Dechant <[email protected]>
Date:   Wed Mar 10 14:52:19 2021 -0500

    Implement Fixed Price Contract on asset details page (#216)

    * populate tzip-16 contract data when contracts are originated

    The spec only requires that the 'description' and 'interfaces' fields
    to be defined IIRC

    * Remove update operators from market contract

    This should resolve issue #130

    * remove dead code

    * Update metadata definition given Eugene's comments

    * replaced nested code with async/await syntax

    * feat: Update client/package.json version, use in splash page

    * take out nested try/catch block

    * remove more dead code

    * form JSON correctly

    * update faucet storage in contracts/src/nft-contracts-tzip16.ts

    * move example metadata definition from ligo to typescript

    * feat: Scaffold notifications, file upload as thunk

    * update contracts given Michael/Eli's suggestions (will update tests)

    * modify tests to reflect changes in contract's entrypoints

    * feat: Upload artifact files on token creation submit

    * more cleanup as per Michael's comments

    * take out tzip12 contracts and related files/tests

    * take out old contracts in `contracts/bin`

    * combine market_case_1.ts/market_case_1.test.ts -> nft_market.test.ts

    also put some important code into beforeEach block

    * wip: Upgrade to edonet

    * wip: Bypass typescript, 'edo2net' in wallet requestPermissions for Thanos

    * fix - incorrectly used error

    fa2_insufficient_balance should be fa2_token_undefined

    * Put required price and amount given in the "WRONG_TEZ_PRICE" error.

    * make sure tez doesn't get stuck on Sell/Cancel entry-points

    * Transfers of zero amount MUST be treated as normal transfers.

    In case of a zero amount transfer, the token_id validity remains
    unverified. This has been addressed.

    * wrap entrypoint name in parentheses

    * include tz files

    * chore: Remove unused environment variables from bin/dev-*/env scripts

    * fix: Resolve issues with notification delivery

    * fix(temp): Workaround edonet compatibility issues by referring to edo2net in client

    * feat: Initial video NFT upload & display

    * feat: Play/pause video on hover in token grid

    * chore: Cleanup unused actions, IPFS form display

    * fix: Readd bootstrap functions that were cleared during contracts/ refactor

    * fix: Work around edo2net edge case that broke sandbox

    * fix: Use createReadStream for non-pinata uploads

    * fix: Fix token_metadata_map -> token_info regression

    * doc: Update delphinet -> edonet in README

    * Fix wallet connect (#203)

    * Fix issue where already connected wallets would not auto reconnect

    * fix: Fix redux warning, resolve disconnect issue, fix FOUC on reconnect

    * refactor: Move wallet reconnect attempt state out of component and into system SDK

    Co-authored-by: Philip Diaz <[email protected]>

    * Fixing yarn log:api to follow api-server and not bcd api

    * fix: Update max request size in local nginx gateway

    * chore: Bump server package.json version

    * Implement Fixed Price Contract on asset details page #121

    * Update config schema

    * Add bootstrapping for fixed price contract

    * remove unnecessary batch params

    * feat: Add retry/cancel behavior for modal error states

    * Show for sale items in user's collection

    * Wait for confirmations before updating NFT state; connect user's wallet on Buy when not already connected

    Co-authored-by: Emmanuel Denloye-Ito <[email protected]>
    Co-authored-by: Philip Diaz <[email protected]>
    Co-authored-by: lambdahands <[email protected]>
    Co-authored-by: Philip Diaz <[email protected]>

commit d7174e5
Author: Rick Love <[email protected]>
Date:   Mon Mar 8 10:39:21 2021 -0600

    Reset Wallet Selection on Permission Failure (#222)

    * Reset Wallet Selection on Permission Failure

    * Remove console log

commit 62a7591
Author: Rick Love <[email protected]>
Date:   Mon Mar 8 10:39:11 2021 -0600

    FIX Image Upload Preview Size (#225)

commit a0f6ce6
Merge: ad23055 3ced760
Author: Philip Diaz <[email protected]>
Date:   Fri Mar 5 10:37:56 2021 -0500

    Merge branch 'master' into develop

commit 31727b0
Author: Gregory Rocco <[email protected]>
Date:   Thu Mar 4 14:06:22 2021 -0500

    updated shield to reflect version

commit ad23055
Author: lambdahands <[email protected]>
Date:   Wed Mar 3 16:43:12 2021 -0500

    feat: Originate contract via minter-sdk contracts/bin/ code (#215)

    * feat: Originate contract via minter-sdk contracts/bin/ code

    * feat: Use public minter-sdk raw content url

    * refactor: Update bootstrap-contracts-config script with clearer functions

    * chore: Remove star imports from bootstrap-contracts-config

commit d13a4b8
Author: lambdahands <[email protected]>
Date:   Wed Mar 3 11:38:17 2021 -0500

    fix(doc): Update README with correct Pinata apiSecret field (#214)

commit 4df1556
Author: Emmanuel Denloye-Ito <[email protected]>
Date:   Wed Mar 3 11:24:31 2021 -0500

    Auction and fixed price contracts (#213)

    * feat: Commit contracts/ changes from fixed-price and auction work

    This commit moves changes merged from emmanuel/fixed-price sale as well
    as eli/english-auction into a clean branch on top of develop.

    * chore: Update yarn.lock

    * token_metadata_map -> token_info

    * recompile contracts

    Co-authored-by: Philip Diaz <[email protected]>

commit 09a3d0a
Author: Filipe Farinha <[email protected]>
Date:   Thu Mar 4 00:24:03 2021 +0800

    Added placeholder Pinata API keys. (#208)

commit 4cf40d7
Merge: 6736474 6432b72
Author: Philip Diaz <[email protected]>
Date:   Mon Mar 1 14:11:32 2021 -0500

    Merge branch 'develop' of github.com:tqtezos/minter into develop

commit 6736474
Author: Eli Guenzburger <[email protected]>
Date:   Thu Feb 4 23:07:25 2021 -0500

    added english auction

commit 6432b72
Author: Eli Guenzburger <[email protected]>
Date:   Thu Feb 4 23:07:25 2021 -0500

    added english auction
@obstropolos obstropolos deleted the issue-121 branch April 20, 2021 01:32
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
4 participants