mirror of
https://github.com/oceanprotocol/market.git
synced 2024-12-02 05:57:29 +01:00
f6d11e5e6f
* support storage type publish * adding storageType to edit form * add IPFS type * fix testst and rollback ipfs typing * update oceanjs lib * fix Ipfs type * Update package-lock.json * added graphql and smartcontract options UI (WIP) * update package.json * removed graphql and smartcontracts * make various fixes for edit and publish with IPFS (missing Arweave) * removed no-case-declarations lines * moved ipfs utils * renamed getFileUrlInfo to getFileInfo * added is-ipfs to jest mock * Update package-lock.json * fix things * npm is fun * rename url to file in getFileInfo * refactor publish form (storage type field) * fix tab value when changing tabs * refactoring edit form * more refactor edit form * fix edit validation * fix validation when input is empty on edit form * fix validation when loading asset in edit form * change URL to file confirmed * change messages based on service type * Update form.json * fix FileInput tests and added ipfs / arweave tests * removed unnecessary comment * Update index.tsx * cleanup logic * update @oceanprotocol/lib * Update package-lock.json * fix test error * fix test assetsWithAccessDetails Co-authored-by: Matthias Kretschmann <m@kretschmann.io>
207 lines
7.9 KiB
JSON
207 lines
7.9 KiB
JSON
{
|
|
"metadata": {
|
|
"title": "Metadata",
|
|
"fields": [
|
|
{
|
|
"name": "nft",
|
|
"label": "Data NFT",
|
|
"type": "nft",
|
|
"help": "All metadata is stored on-chain in a newly deployed ERC-721 contract representing this asset, created with this name, symbol, description and image.",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "type",
|
|
"label": "Asset Type",
|
|
"type": "boxSelection",
|
|
"options": ["Dataset", "Algorithm"],
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "name",
|
|
"label": "Title",
|
|
"placeholder": "e.g. Shapes of Desert Plants",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "description",
|
|
"label": "Description",
|
|
"help": "Add a thorough description with as much detail as possible. You can use [Markdown](https://daringfireball.net/projects/markdown/basics). You can change the description at any time. If you provide personal data, please note that it will remain in the transaction history. For more information on how personal data is handled within the metadata, please refer to our [privacy policy](/privacy/en).",
|
|
"type": "textarea",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "author",
|
|
"label": "Author",
|
|
"placeholder": "e.g. Jelly McJellyfish",
|
|
"help": "Give proper attribution for your dataset. You are welcome to use a pseudonym, and you can change your author name at any time. Please note that it will remain in the transaction history. For more information on how personal data is handled within the metadata, please refer to our [privacy policy](/privacy/en).",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "tags",
|
|
"label": "Tags",
|
|
"type": "tags",
|
|
"placeholder": "e.g. logistics"
|
|
},
|
|
{
|
|
"name": "dockerImage",
|
|
"label": "Docker Image",
|
|
"help": "Please select an image to run your algorithm.",
|
|
"type": "boxSelection",
|
|
"options": [
|
|
"populated from algorithmContainerPresets in Publish/_constants"
|
|
],
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "dockerImageCustom",
|
|
"label": "Custom Docker Image",
|
|
"placeholder": "e.g. oceanprotocol/algo_dockers:node-vibrant or quay.io/startx/mariadb",
|
|
"help": "Provide the name and the tag of a public Docker hub image or the custom image if you have it hosted in a 3rd party repository",
|
|
"type": "container",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "dockerImageChecksum",
|
|
"label": "Docker Image Checksum",
|
|
"placeholder": "e.g. sha256:xiXqb7Vet0FbN9q0GFMgUdi5C22wjJT0i2G6lYKC2jl6QxkKzVz7KaPDgqfTMjNF",
|
|
"help": "Provide the checksum(DIGEST) of your docker image.",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "dockerImageCustomEntrypoint",
|
|
"label": "Docker Image Entrypoint",
|
|
"placeholder": "e.g. python $ALGO",
|
|
"help": "Provide the entrypoint for your algorithm.",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "termsAndConditions",
|
|
"label": "Terms & Conditions",
|
|
"type": "checkbox",
|
|
"options": ["I agree to the Terms and Conditions"],
|
|
"required": true
|
|
}
|
|
]
|
|
},
|
|
"services": {
|
|
"title": "Access",
|
|
"fields": [
|
|
{
|
|
"name": "dataTokenOptions",
|
|
"label": "Datatoken",
|
|
"type": "datatoken",
|
|
"help": "The datatoken used for accessing this asset will be created with this name & symbol.",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "providerUrl",
|
|
"label": "Provider URL",
|
|
"type": "providerUrl",
|
|
"help": "Enter the URL for your custom [provider](https://github.com/oceanprotocol/provider/) or leave as is to use the default one. If you change your provider URL after adding your file, please add & validate your file again.",
|
|
"placeholder": "e.g. https://provider.oceanprotocol.com/",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "files",
|
|
"label": "File",
|
|
"prominentHelp": false,
|
|
"type": "tabs",
|
|
"fields": [{
|
|
"value": "ipfs",
|
|
"title": "IPFS",
|
|
"label": "CID",
|
|
"placeholder": "e.g. bafkreidgvpkjawlxz6sffxzwgooowe5yt7i6wsyg236mfoks77nywkptdq",
|
|
"help": "This CID will be stored encrypted after publishing.",
|
|
"computeHelp": "For a compute dataset, your file should match the file type required by the algorithm, and should not exceed 1 GB in file size. ",
|
|
"prominentHelp": true,
|
|
"type": "files",
|
|
"required": true
|
|
},
|
|
{
|
|
"value": "arweave",
|
|
"title": "Arweave",
|
|
"label": "Transaction ID",
|
|
"placeholder": "e.g. DBRCL94j3QqdPaUtt4VWRen8rZfJZBb7Ey40iMpXfhtd",
|
|
"help": "This Transaction ID will be stored encrypted after publishing.",
|
|
"computeHelp": "For a compute dataset, your file should match the file type required by the algorithm, and should not exceed 1 GB in file size. ",
|
|
"prominentHelp": true,
|
|
"type": "files",
|
|
"required": true
|
|
},
|
|
{
|
|
"value": "url",
|
|
"title": "URL",
|
|
"label": "File",
|
|
"placeholder": "e.g. https://file.com/file.json",
|
|
"help": "This URL will be stored encrypted after publishing. **Please make sure that the endpoint is accessible over the internet and is not protected by a firewall or by credentials.**",
|
|
"computeHelp": "For a compute dataset, your file should match the file type required by the algorithm, and should not exceed 1 GB in file size. ",
|
|
"prominentHelp": true,
|
|
"type": "files",
|
|
"required": true
|
|
}],
|
|
"sortOptions": false,
|
|
"required": true
|
|
},{
|
|
"name": "links",
|
|
"label": "Sample file",
|
|
"prominentHelp": false,
|
|
"type": "tabs",
|
|
"fields": [
|
|
{
|
|
"value": "url",
|
|
"title": "URL",
|
|
"label": "File",
|
|
"placeholder": "e.g. https://file.com/file.json",
|
|
"help": "This URL will be stored encrypted after publishing. **Please make sure that the endpoint is accessible over the internet and is not protected by a firewall or by credentials.**",
|
|
"computeHelp": "For a compute dataset, your file should match the file type required by the algorithm, and should not exceed 1 GB in file size. ",
|
|
"prominentHelp": true,
|
|
"type": "files",
|
|
"required": false
|
|
}],
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "algorithmPrivacy",
|
|
"label": "Algorithm Privacy",
|
|
"type": "checkbox",
|
|
"options": ["Keep my algorithm private"],
|
|
"help": "By default, your algorithm can be downloaded for free or a fixed price, in addition to running in compute jobs. Enabling this option will prevent downloading, so your algorithm can only be run as part of a compute job on a dataset.",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "access",
|
|
"label": "Access Type",
|
|
"help": "Choose how you want your files to be accessible for the specified price.",
|
|
"type": "boxSelection",
|
|
"options": ["Access", "Compute"],
|
|
"required": true,
|
|
"disclaimer": "Please do not provide downloadable personal data without the consent of the data subjects.",
|
|
"disclaimerValues": ["Download"]
|
|
},
|
|
{
|
|
"name": "timeout",
|
|
"label": "Timeout",
|
|
"help": "Define how long buyers should be able to download the dataset again after the initial purchase.",
|
|
"type": "select",
|
|
"options": ["Forever", "1 day", "1 week", "1 month", "1 year"],
|
|
"sortOptions": false,
|
|
"required": true
|
|
}
|
|
]
|
|
},
|
|
"pricing": {
|
|
"title": "Pricing",
|
|
"fields": [
|
|
{
|
|
"name": "dummy content, actual content is defined under 'create' key in ../price.json"
|
|
}
|
|
]
|
|
},
|
|
"preview": {
|
|
"title": "Preview"
|
|
},
|
|
"submission": {
|
|
"title": "Submit"
|
|
}
|
|
}
|