freeCodeCamp/common/models/challenge.json

147 lines
2.9 KiB
JSON

{
"name": "challenge",
"base": "PersistedModel",
"idInjection": true,
"trackChanges": false,
"properties": {
"id": {
"type": "string",
"id": true
},
"name": {
"type": "string",
"index": {
"mongodb": {
"unique": true,
"background": true
}
}
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"order": {
"type": "number"
},
"suborder": {
"type": "number"
},
"isBeta": {
"type": "boolean",
"description": "Show only during dev or on beta site. Completely omitted otherwise"
},
"isComingSoon": {
"type": "boolean",
"description": "Challenge shows in production, but is unreachable and disabled. Is reachable in beta/dev only if isBeta flag is set"
},
"dashedName": {
"type": "string"
},
"superBlock": {
"type": "string",
"description": "Used for ordering challenge blocks in map"
},
"superOrder": {
"type": "number",
"description": "Used to determine super block order, set by prepending two digit number to super block folder name"
},
"block": {
"type": "string"
},
"difficulty": {
"type": "string"
},
"description": {
"type": "array"
},
"tests": {
"type": "array"
},
"head": {
"type": "array",
"default": [],
"description": "appended to user code"
},
"tail": {
"type": "array",
"default": [],
"description": "prepended to user code"
},
"helpRoom": {
"type": "string",
"default": "Help",
"description": "Gitter help chatroom this challenge belongs too. Must be PascalCase"
},
"fileName": {
"type": "string",
"description": "filename challenge comes from. Used in dev mode"
},
"challengeSeed": {
"type": "array"
},
"challengeType": {
"type": "string"
},
"MDNlinks": {
"type": "array"
},
"nameCn": {
"type": "string"
},
"descriptionCn": {
"type": "array"
},
"nameFr": {
"type": "string"
},
"descriptionFr": {
"type": "array"
},
"nameRu": {
"type": "string"
},
"descriptionRu": {
"type": "array"
},
"nameEs": {
"type": "string"
},
"descriptionEs": {
"type": "array"
},
"namePt": {
"type": "string"
},
"descriptionPt": {
"type": "array"
},
"solutions": {
"type": "array",
"default": []
},
"releasedOn": {
"type": "string"
}
},
"validations": [],
"relations": {},
"acls": [
{
"accessType": "*",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
},
{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW"
}
],
"methods": []
}