const ownerId = "contribut3.near"; const accountId = context.accountId; const entityId = props.entityId; const contributorId = props.contributorId; initState({ description: "", startDate: "", }); if (!entityId || !contributorId) { return "Cannot show contribution request without entityId or contributorId!"; } const contributor = Near.view( ownerId, "get_contribution", { entity_id: entityId, contributor_id: accountId }, "final" ); const isAuthorized = !!contributor && contributor.permissions.includes("Admin"); const contributionRequest = props.isPreview ? props.contributionRequest : Near.view(ownerId, "get_contribution_request", { entity_id: entityId, contributor_id: contributorId, }); if (!contributionRequest) { return props.isPreview ? "You must provide contribution request object in preview mode!" : "Loading..."; } const description = isPreview ? props.contributionRequest.description : contributionRequest.description; const descriptionArea = <Markdown text={description} />; return ( <div className="card"> {header} {body} {footer} </div> );