tinybike / augur-ui-react-components Goto Github PK
View Code? Open in Web Editor NEW[DEPRECATED] React components for the Augur UI
[DEPRECATED] React components for the Augur UI
If I'm on a market's detail page and then go to the main markets listing, I get the following error:
components.jsx:15: Uncaught Invariant Violation: Minified React error #34; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=34 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
If you follow that link, the full error message is:
React DOM tree root should always have a node reference.
This happens on both https://augur-dev.firebaseapp.com as well as on the latest augur+AURC master branches.
assertions
are only used in augur tests so there is no need to send them to browser (i.e. bundle them with UI components).
Instead of
import { assertions } from 'augur-ui-react-components';
we can have something like
import assertions from 'augur-ui-react-components/lib/assertions';
Per last meeting, the leading strategy so far is to create selector tests inside the ui repo that test the shape of the selector, then build another similar test in the augur repo that transforms state into the selector then runs the ui selector to test its shape. We don't want to duplicate any portion of these tests. Let's see if we can implement this nicely.
Once we nail down the strategy we should move the relevant test portions from the augur repo to the ui repo.
After going to market page there is sometimes Cannot read property 'requestAnimationFrame' of undefined
error
Add eslint to the react component repo and lint all the components.
The assertions associated with the create-market-form
selector need to be updated for congruence to the new assertion approach in AURC.
New registration flow:
name:
password:
confirm-password:
[GENERATE ACCOUNT]
next page:
Your account has been generated locally. We do not retain a copy.
*It is critical that you save this information in a safe place.*
secure login id: XANDWONDWQDNQDOQDJQKDQO
password: ....... (show password)
Next send to login screen to make sure they properly recorded their information (do not auto-login)
Login screen label "username" should be changed to "secure login id".
Trading is moving to be limit and order-book based. An initial implementation exists commented in the code. Bring back this implementation, including bids/asks views, completing and fixing any missing or broken pieces.
The selectors file provides the dummy model for the components app to render and do stuff. It is composed of two main parts, the data, and the handlers that allow for interaction.
The data should match the selectors in the core app, visible by inspecting window.selectors
.
Handlers are implemented very simply using selectors.update({ statePiece1: newValue })
function. It works by passing in some selector state that needs to be mutated, then the function re-renders the app.
For example, one of our selector keys is activePage
. This holds a string specifying which main page we are on. We want to be able to update this key by clicking on various links in the site-header so we can switch pages in the ui. To do this, for the login link, we have: onClick: () => module.exports.update({ activePage: LOGIN })
. That basically says, when the login link is clicked, set activePage to LOGIN then re-render the site.
This issue is about filling in all the missing props and handlers to make the components site work similarly to the live site.
More details here: AugurProject/augur#670
In short, need to change the labels and descriptions of the fees, as well as the numerical constraints (passed in from augur).
The disqus implementation we have has two problems:
We need a comment solution that uses iframes, and manages conversations based on a provided id, not an account or page url (because ipfs urls will change on version updates)
If after some quick research nothing obvious pops up, implement the facebook comment system (as long as it is confirmed the above is true)
When trying to view the chart for example, the screen will constantly snap back to the top.
Currently the account button on the navbar is blank for unlocked local accounts. It should have something there! My suggestion is to show the unlocked Ethereum account's address.
Currently the charting is below the discussion.
There are many reasons a user might want to see their account's Ethereum address (e.g., so they can ask someone else to send them ether). This should be displayed somewhere on the accounts page.
The create market form can be opened using the "make a market" button:
The "additional market info" page has some elements that are no longer needed, confirm with jack whcih ones need to be removed/changed/added:
Also, some new ui has to be added somewhere to ask the user how much initial liquidity they want to provide, and in what distribution. Ask joey/jack for details on that.
The first part of this issue is researching what the specific requirements are, posted in a comment here, so we can discuss as a team how to proceed.
Right now, generating an initial order book is a required part of market creation. It should be decoupled so that it is available, but not required. Suggested way of doing this is to add a checkbox somewhere in the create market process:
If checked, the generateOrderBook form appears. If unchecked, then the market is created without automatically calling augur.generateOrderBook
.
Some suggestions:
Once we agree on a service, we will want to implement it in the ui, tied to market.id, and display in the /market view (market-page.jsx) in all states except reporting
We would like to add an auto-complete type enhancement to the tag inputs during the market creation process, to encourage users to centralize on popular tags people have been choosing. Every market has up to 3 tags, the auto-complete for the first tag input, should use a list generated from the first tag of the markets sorted by popularity and filtered down as they type characters, the second tag input from the second tag in markets, etc. The ideal situation is for users to be encouraged to create hierarchical structures like:
Tag1
Sports
Finance
Law
etc.
Tag2
Football
Soccer
Tennis
etc.
We can't force any of this, so the inputs still have to be free-form and allow any input, but we do want to try to encourage it.
To accomplish this in the UI:
The rest of the logic will be handled in augur repo.
Sending crypto requires two inputs:
A cute little form on the right side of the dark header area would be good. Option to send ether or rep.
The current live beta ui located at augur.net has a charts component on every market detail page. We would like to pull out that code from the live ui and put it in this augur2 ui.
I get this warning on the main markets listing:
components.jsx:1251: Warning: Unknown prop `text` on <a> tag. Remove this prop from the element. For details, see https://fb.me/react-unknown-prop
in a (created by Link)
in Link (created by MarketItem)
in div (created by MarketItem)
in div (created by MarketItem)
in article (created by MarketItem)
in MarketItem (created by Markets)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.