issue-tracker's People
issue-tracker's Issues
Automatically pull NFT metadata into the NFTTokenOwners table
The following code could be put as a core part of moralis to automatically pull in metadata info when syncing to the NFTTokenOwners table. This would save the client a bunch of calls when trying to get the metadata.
function httpGet(uri) {
return new Promise ((resolve, reject) => {
https.get(uri, (response) => {
let data = '';
response.on('data', (chunk) => { data += chunk; });
response.on('end', () => { resolve(data); });
}).on("error", (error) => { reject(error); });
});
}
Moralis.Cloud.beforeSave("NFTTokenOwners", async (request) => {
const tokenUri = request.object.get('token_uri');
if (!tokenUri) return;
request.object.set("metadata", await httpGet(tokenUri));
});
Manage columns needs smaller font size to prevent spill over
Move or hide the apikey and apisecret from being automatically displayed when cloud functions is opened
At the moment, sensitive information is revealed on screen as soon as the cloud functions modal comes up.
This information could be moved to a separate settings page or being automatically hidden with ********* when the modal is shown
Server Loading UI
We need better indication that creating a server takes 5 min approximately
Some devs think something broke
Maybe some ETA or "%" done
Server Instance
In Server Instance -> Ganache Proxy Server
I think it's a bit unclear. I was looking for information on how to apply the copied code.
"2. Copy the following content in the same folder of frp as "frpc.ini", this code assumes your ganache instance is hosted at port 7545"
to make it simpler to understand, it should be rewritten to something like:
"2. Replace the content in the file "frpc.ini" inside the frp folder with the following code, the code assumes your ganache instance is hosted at port 7545"
Bigger cloud functions code window
Would give a better overview of the window for the cloud functions had a larger window.
Horizontal scrolling does not work in the dashboard without any rows
No warning that session has expired in the admin panel
It has happened several times that I have worked on a cloud function,
went on a short break, continued working for a while only to have all my work lost when clicking "Save File" because my session had expired and I am met with the login screen and my work was not saved
Read More button links to current page
Steps to reproduce:
Go to moralis.io and scroll down
Actual result:
The button reloads the same page
Expected result:
Should link to a section or another page
Source URL: https://moralis.io/
Browser | Chrome 89.0.4389.82 |
Screen Size | 1920 x 1080 |
OS | OS X 10.14.6 |
Viewport Size | 1920 x 978 |
Zoom Level | 100% |
Pixel Ratio | @โ1x |
Reported with Marker.io
"My Moralis Instace" typo
Sanity check for local dev chain servers
Wrote this sanity check to make sure that the developer has not switched the Ganache instance against a server by mistake. I have seen several on Moralis Beta who have done this and I also made this mistake in the beginning. The cloud function will return true if everything is normal and false, if the ganache instance has been changed. Maybe you want to use it, maybe not...
Moralis.Cloud.define("sanityCheck", async (request) => {
// Define query
const query = new Moralis.Query('EthTransactions');
// Define pipeline that will take the block number and timestamp of the row with the highest block number
const pipeline = [
{ project: { _id: 0, block_number: 1, block_timestamp: 1 } },
{ sort : { block_number : -1 } },
{ limit: 1 }
];
// Get the row that will serve as the "truth"
const master = await query.aggregate(pipeline);
// Return if no transactions were found
if (master.length == 0) return true;
// Define second pipeline that will check if there are any rows with more recent timestamp but with lower block number (New Ganache instance)
const pipeline2 = [
{ project: { _id: 0, block_number: 1, block_timestamp: 1 } },
{ match: { block_timestamp: { $gt: master[0].block_timestamp }, block_number: { $lt: master[0].block_number } } },
{ count: "corruptTransactions" }
];
// Get the result
const result = await query.aggregate(pipeline2);
// If we have any rows then the use has changed instance and the database is now corrupt
return result.length == 0;
});
EthTokenBalance table is not always updated after Transfer events
The Eth token balance table is not always being updated after a Minting.
Either it is on a long sync timer or it is retriggered after some other transfer event has taken place
Cannot add moralis as a dependency in Angular
Installing Moralis via NPM in an Angular application results in getting these error messages when starting the application:
Error: ./node_modules/@elrondnetwork/bls-wasm/bls.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/@elrondnetwork/bls-wasm'
Error: ./node_modules/@elrondnetwork/erdjs/out/walletcore/userWallet.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/@elrondnetwork/erdjs/out/walletcore'
Error: ./node_modules/eth-lib/lib/bytes.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/eth-lib/lib'
Error: ./node_modules/scryptsy/lib/scrypt.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/scryptsy/lib'
Error: ./node_modules/scryptsy/lib/scryptSync.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/scryptsy/lib'
Error: ./node_modules/scryptsy/lib/utils.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/scryptsy/lib'
Error: ./node_modules/web3-eth-accounts/lib/index.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/web3-eth-accounts/lib'
Error: ./node_modules/web3-eth-accounts/node_modules/eth-lib/lib/bytes.js
Module not found: Error: Can't resolve 'crypto' in 'node_modules/web3-eth-accounts/node_modules/eth-lib/lib'
Error: ./node_modules/@elrondnetwork/bls-wasm/bls_c.js
Module not found: Error: Can't resolve 'fs' in 'node_modules/@elrondnetwork/bls-wasm'
Error: ./node_modules/@elrondnetwork/erdjs/out/smartcontracts/code.js
Module not found: Error: Can't resolve 'fs' in 'node_modules/@elrondnetwork/erdjs/out/smartcontracts'
Error: ./node_modules/@elrondnetwork/erdjs/out/smartcontracts/typesystem/abiRegistry.js
Module not found: Error: Can't resolve 'fs' in 'node_modules/@elrondnetwork/erdjs/out/smartcontracts/typesystem'
Error: ./node_modules/web3-providers-http/lib/index.js
Module not found: Error: Can't resolve 'http' in 'node_modules/web3-providers-http/lib'
Error: ./node_modules/xhr2-cookies/dist/xml-http-request.js
Module not found: Error: Can't resolve 'http' in 'node_modules/xhr2-cookies/dist'
Error: ./node_modules/web3-providers-http/lib/index.js
Module not found: Error: Can't resolve 'https' in 'node_modules/web3-providers-http/lib'
Error: ./node_modules/xhr2-cookies/dist/xml-http-request.js
Module not found: Error: Can't resolve 'https' in 'node_modules/xhr2-cookies/dist'
Error: ./node_modules/xhr2-cookies/dist/xml-http-request.js
Module not found: Error: Can't resolve 'os' in 'node_modules/xhr2-cookies/dist'
Error: ./node_modules/@elrondnetwork/bls-wasm/bls.js
Module not found: Error: Can't resolve 'path' in 'node_modules/@elrondnetwork/bls-wasm'
Error: ./node_modules/@elrondnetwork/bls-wasm/bls_c.js
Module not found: Error: Can't resolve 'path' in 'node_modules/@elrondnetwork/bls-wasm'
Error: ./node_modules/cipher-base/index.js
Module not found: Error: Can't resolve 'stream' in 'node_modules/cipher-base'
Error: ./node_modules/keccak/lib/api/keccak.js
Module not found: Error: Can't resolve 'stream' in 'node_modules/keccak/lib/api'
Error: ./node_modules/keccak/lib/api/shake.js
Module not found: Error: Can't resolve 'stream' in 'node_modules/keccak/lib/api'
Stuck in infinite loop with email activation popup - no email for activation received
I never received an activation link by e-mail, just a link to join the Discord channel. I created an account today using the code from Discord. Tried the reset password feature to see if that would trigger something but that also links me directly back to the same page where I cannot do anything because the popup keeps coming up, and "getAllByUser" is polled repeatedly.
Tried in Brave, Opera, and Chrome
Eth balance for watched address
Would be great to have a quick way to get the ETH balance of a watched address
- There is a
balanceEth
column in the_EthAddress
table for authenticated users but no corresponding column inWatchedEthAddress
- The other place one might expect to find it is in
EthTokenBalance
but it has all tokens except ETH
Support for ERC1155
ERC1155 is more and more usable...
"owner_of" column on EthTokenBalance is not lowercase
The column: "owner_of" on the table EthTokenBalance is not converted to lower case when synced which makes it difficult to run queries against it
Documentation assumes too much prior knowledge
Hi guys, as requested over on discord here is a summary of the feedback I offered regarding the documenation.
- The docs assume various prerequisite knowledge, such as knowing what "Ganache" is and whether it's going to be used or not.
- The learning curve is somewhat steep without an overview of the programming and architechtural landscape that Moralis occupies.
I suggest adding a section entitled something like "Prerequisite Knowledge" which gives a breif overview of how you expect Moralis to be used and what technologies are needed / recommended to be used with it, along with some links to further reading. The information can probably safely assume the reader has a firm understanding on a modern javascript stack, but should not assume they are familiar with the cryptosphere technologies.
404 Code when trying to delete a scheduled job
Strange Session behavior
Sessions are still alive if Session-Entries on a Server where deleted.
Should sessions be still alive after a deletion? This could lead to some development issues for the frontend, because a User with a Address is still logged in, but on from the Moralis-Server he shouldn't be as this Session doesn't exist in the table.
Tested on Server-Version: 0.0.125
Add IPFS directory support
With directory support we could have multiple files in one folder/hash.
More importantly, we can address files with their file name, so ipfs gateways can add proper content-type.
for example https://ipfs.io/ipfs/hash/image.jpg would server image content type.
Moralis cloud function works in local environment, but fails in production environment
I am using a cloud function to pull a list user addresses to display.
Cloud function:
Moralis.Cloud.define("getUserList", async function (request) {
const query = new Moralis.Query(Moralis.User);
query.descending("updatedAt")
const results = await query.find({ useMasterKey: true });
const userAddresses = results.map(function (user) {
return {
ethAddress: user.get("ethAddress"),
updatedAt: user.get("updatedAt"),
};
});
return userAddresses;
});
But fails in production (hosted via Fleek.co):
All env variables are set in Fleek, and should be present in the build.
Source:
- https://github.com/iammatthias/.com/blob/guestbook/src/hooks/use-auth.js
- https://github.com/iammatthias/.com/blob/guestbook/src/hooks/use-moralis.js
- https://github.com/iammatthias/.com/blob/guestbook/src/components/joy/guestlist.js
- https://github.com/iammatthias/.com/blob/guestbook/src/pages/guestbook.js
A deploy preview is available here: https://bafybeifxeo65msvrkwhe2ldeww4kmipnyd37fuwmb5psqecq4ibbjyjbju.on.fleek.co/guestbook/
The rest of the site is functioning, apart from the /guestbook/
page. This is the only portion of the site that uses Moralis currently.
Add frpc integration to the moralis-admin-cli
If the file location of frpc is known and stored by the cli. It should be relatively easy to integrate an automatic configuration and run ganache or hardhat directly from the cli if the user only specifies the server
Add command for restart/update server from moralis-admin-cli
Move all token standards except ERC20 to new EthToken tables.
Today, All tokens are listed under EthTokenBalance, which does not always make sense.
Mergin Addresses
Some inconsistency in behavior - sometimes all addresses are shown under "accounts" in the user row.
Sometimes only those except the one that is in the "ethAddress" column are listed in "accounts".
Moralis React Native
I tried to install moralis for react native as described here https://www.npmjs.com/package/moralis
But then I get the error message "Unable to resolve module crypto from D:\Programming\ReactNative\theCollector\node_modules\web3-eth-accounts\lib\index.js:"
Need to import https://www.npmjs.com/package/web3-react-native if react native
Unresponsive login button when using a password manager
"Join the Beta" --> "Accept Invite" is not working!
UI: progress
When creating a new server on "https://poc.moralis.io/servers", it would be great if:
- A progress bar is displayed to progress from 0 to 100%.
or
- A billboard status message is displayed stating what is happenging "Step 1 of nn: Creating xxx . .. ... . .. ..." then "Step 2 of nn: Adding xxx . .. ... . .. ..." ...
Currently not possible to set "use masterkey only" on config parameters
BUG: $ in Cloud Function Queries produces error on save
Steps to reproduce:
- Create a Cloud Function with a query that contains a
$
as required by the Mongo syntax - Paste the code into the Cloud Function section on a Moralis Server instance
- Press the Save button... an error occurs
WORKAROUND: escape $
with \$
This is a known issue. Documenting here so it doesn't get lost.
Normalizing for address type when syncing contract events missing
When syncing contract events, the address type is not normalized to lowercase on save.
Add manage (add/remove) plugins from the moralis-admin-cli
Would be Nice to be able to add and remove event subscriptions from the cli
Calling burn on a token contract should remove the token from EthTokenBalance
When you mint a new token it appears in EthTokenBalance automatically.
When you burn it, it should also be removed from EthTokenBalance automatically.
Moralis typescript definitions not found
$ npm install @types/moralis
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/@types%2fmoralis - Not found
npm ERR! 404
npm ERR! 404 '@types/moralis@latest' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
Dashboard UI clipping
Related data are not sent on live queries
If you make a subscription to for example the create event, the related fields are not sent when the event is triggered
Chrome - Non ethereum enabled browse
I'm getting a "Non ethereum enabled browse" error in javascript when running the Boilerplate example in Chrome Version 89.0.4389.90 (Official Build) (x86_64) on Mac OS.
I use the same browser with Metamask and other web3 apps so I know the problem is not with Chrome.
Error: Non ethereum enabled browser
at moralis.js:3799
at tryCatch (moralis.js:23220)
at Generator.invoke [as _invoke] (moralis.js:23450)
at Generator.next (moralis.js:23275)
at asyncGeneratorStep (moralis.js:22667)
at _next (moralis.js:22689)
at moralis.js:22696
at new Promise ()
at new Wrapper (moralis.js:25685)
at Function. (moralis.js:22685)
Text contrast in the dashboard
Feedback survey has some smaller bugs
-
when asked if we will use moralis in the future, when you answer "Yes", the next question assumes you answered "No"
-
the last page of the survey has template text "Custom Thank you Screen A" or "When your respondent clicks the button below..."
Color scheme
Emojis are not valid characters when uploading metadata to IPFS without encoding first
The EventSync table is not updated when the user REMOVES a plugin.
If a user removed a synced event, the row representing the event in the database is not removed.
Fix for Demo app Casino CONTRACT_ADDRESS
Line 47 in main.js is:
window.contract = new web3.eth.Contract(contractAbi, "CONTRACT_ADDRESS");
should be:
window.contract = new web3.eth.Contract(contractAbi, CONTRACT_ADDRESS);
as CONTRACT_ADDRESS is defined as a const in top of file and should be passed as such.
Data access / permissions
By default all permissions are public. What are best practice to restrict read/write access? before events, validation, ACL... any good (Parse) tutorials?
Casino demo app needs correction in readme for start of python webserver
I tried the casino demo Dapp. Big Wins right ๐ ? I followed instructions from readme https://github.com/MoralisWeb3/demo-apps/blob/main/casino-dapp/README.md However, the suggested python http.server or SimpleHTTPServer does not support POST, hence the Flip Coin button gives: ParseError: 107 Received an error with invalid JSON from Parse:
Error response
Error code: 501
Message: Unsupported method ('POST').
Error code explanation: HTTPStatus.NOT_IMPLEMENTED - Server does not support this operation.
The solution is to start "python -m http.server --cgi" which supports POST.
Add a way to prevent clients from creating new tables in the database
ACP and CLP does not add restriction on adding new tables.
This ban be restricted though if we expose the config file in the settings so the developer can set: allowClientClassCreation = false
"Your accout is now active" typo
When clicking the link from the email to activate my account, it leads to a web page with a dialog saying "Your accout is now active!" - obviously should say "account".
Auto correction on uint -> uint256 on topics
Is it possible to do a auto correction behind the scenes on uint -> uint256 when the user enters the topic for the RealTime-event?
I think this will be a common problem.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.