Search
Search

Transaction: C8W3eAf...4i9t

Receiver
Status
Succeeded
Transaction Fee
0.00099 
Deposit Value
0.01 
Gas Used
10 Tgas
Attached Gas
100 Tgas
Created
February 22, 2023 at 1:17:39pm
Hash
C8W3eAfTtPF3LDzofhu5q4tukNN7TQxKJfakek3x4i9t

Actions

Called method: 'set' in contract: social.near
Arguments:
{ "data": { "contribut3.near": { "widget": { "NeedPage": { "": "const ownerId = \"contribut3.near\";\nconst accountId = props.accountId;\nconst cid = props.cid;\n\nif (!accountId || !cid) {\n return \"Cannot show the request page without an account ID and a CID!\";\n}\n\nState.init({\n content: props.content ?? \"requests\",\n search: props.search ?? \"\",\n});\n\nconst need = Near.view(\n ownerId,\n \"get_contribution_need\",\n { account_id: accountId, cid },\n \"final\",\n true\n);\n\nconst isAuthorized = Near.view(\n ownerId,\n \"check_is_manager_or_higher\",\n { entity_id: accountId, account_id: context.accountId },\n \"final\"\n);\n\nconst needString =\n typeof need.contribution_type === \"string\"\n ? need.contribution_type\n : need.contribution_type.Other;\n\nconst body = (\n <div className=\"px-3\">\n <div className=\"d-flex flex-row justify-content-start\" id={accountId}>\n <div className=\"flex-grow-1 py-3\">\n <div className=\"d-flex flex-row justify-content-between align-items-start\">\n <h1 className=\"flex-grow-1\">Need for {needString}</h1>\n <div className=\"d-flex flex-row justify-content-between align-items-center\">\n <a\n className=\"btn me-2 mb-2 text-light\"\n style={{\n backgroundColor: \"#6941C6\",\n borderColor: \"#6941C6\",\n }}\n // href={`https://near.social/#/${ownerId}/widget/Entity?accountId=${accountId}`}\n >\n <i className=\"bi-person-plus\" />\n <span className=\"text-nowrap\">Invite contributor</span>\n </a>\n <Widget\n src={`${ownerId}/widget/CardMenu`}\n props={{\n update: props.update,\n items: [\n {\n text: \"Create new request\",\n icon: \"bi-boxes\",\n },\n {\n text: \"Invite contributors\",\n icon: \"bi-person-plus\",\n },\n {\n text: \"Delete project\",\n icon: \"bi-trash\",\n },\n ],\n }}\n />\n </div>\n </div>\n <div>\n <span className=\"text-muted me-2\">\n Created {new Date(Number(need.start_date)).toLocaleDateString()}\n </span>\n <Widget\n src={`${ownerId}/widget/ActiveIndicator`}\n props={{\n active: need.active,\n activeText: \"Open for proposals\",\n inactiveText: \"Closed\",\n }}\n />\n </div>\n <Widget\n src={`${ownerId}/widget/Tags`}\n pros={{ tags: { [needString]: \"\" } }}\n />\n </div>\n </div>\n <Markdown text={need.description} />\n </div>\n);\n\nconst proposalsCount = Object.keys(\n Near.view(\n ownerId,\n \"get_need_contribution_requests\",\n { account_id: accountId, cid },\n \"final\",\n true\n ) ?? {}\n).length;\n\nconst contributorsCount = Object.keys(\n Near.view(\n ownerId,\n \"get_need_contributions\",\n { account_id: accountId, cid },\n \"final\",\n true\n ) ?? {}\n).length;\n\nconst contentSelector = (\n <Widget\n src={`${ownerId}/widget/TabSelector`}\n props={{\n tab: \"entity\",\n content: state.content,\n search: state.search,\n accountId: props.accountId,\n update: (content) => State.update({ content }),\n buttons: [\n {\n id: \"contributors\",\n text: \"Contributors\",\n icon: \"bi-people\",\n count: contributorsCount,\n },\n {\n id: \"proposals\",\n text: \"Proposals\",\n icon: \"bi-person-down\",\n count: proposalsCount,\n },\n ],\n }}\n />\n);\n\nconst searchBar = (\n <div className=\"w-25 col-12 col-md-10 col-lg-8\">\n <div className=\"card card-sm\">\n <div className=\"card-body row p-0 ps-2 align-items-center\">\n <div className=\"col-auto pe-0 me-0\">\n <i className=\"bi-search\" />\n </div>\n <div className=\"col ms-0\">\n <input\n className=\"form-control border-0\"\n type=\"search\"\n value={state.search}\n placeholder=\"Search\"\n onChange={(e) => State.update({ search: e.target.value })}\n />\n </div>\n </div>\n </div>\n </div>\n);\n\nconst content = {\n proposals: (\n <Widget\n src={`${ownerId}/widget/ContributionRequestList`}\n props={{ accountId, search: state.search, update: props.update, cid }}\n />\n ),\n contributors: (\n <Widget\n src={`${ownerId}/widget/ContributorList`}\n props={{ accountId, search: state.search, update: props.update, cid }}\n />\n ),\n // invitations: ( <Widget\n // src={`${ownerId}/widget/InviteList`}\n // props={{ accountId, search: state.search, update: props.update }}\n // />\n // ),\n}[state.content];\n\nreturn (\n <div className=\"\">\n <div className=\"mb-5\">{body}</div>\n <div className=\"d-flex flex-row justify-content-between ps-3\">\n {contentSelector}\n {searchBar}\n </div>\n <div className=\"px-3 pt-3\">{content}</div>\n </div>\n);\n" } } } } }

Transaction Execution Plan

Convert Transaction To Receipt
Gas Burned:
2 Tgas
Tokens Burned:
0.00024 
Receipt:
Predecessor ID:
Receiver ID:
Gas Burned:
7 Tgas
Tokens Burned:
0.00075 
Called method: 'set' in contract: social.near
Arguments:
{ "data": { "contribut3.near": { "widget": { "NeedPage": { "": "const ownerId = \"contribut3.near\";\nconst accountId = props.accountId;\nconst cid = props.cid;\n\nif (!accountId || !cid) {\n return \"Cannot show the request page without an account ID and a CID!\";\n}\n\nState.init({\n content: props.content ?? \"requests\",\n search: props.search ?? \"\",\n});\n\nconst need = Near.view(\n ownerId,\n \"get_contribution_need\",\n { account_id: accountId, cid },\n \"final\",\n true\n);\n\nconst isAuthorized = Near.view(\n ownerId,\n \"check_is_manager_or_higher\",\n { entity_id: accountId, account_id: context.accountId },\n \"final\"\n);\n\nconst needString =\n typeof need.contribution_type === \"string\"\n ? need.contribution_type\n : need.contribution_type.Other;\n\nconst body = (\n <div className=\"px-3\">\n <div className=\"d-flex flex-row justify-content-start\" id={accountId}>\n <div className=\"flex-grow-1 py-3\">\n <div className=\"d-flex flex-row justify-content-between align-items-start\">\n <h1 className=\"flex-grow-1\">Need for {needString}</h1>\n <div className=\"d-flex flex-row justify-content-between align-items-center\">\n <a\n className=\"btn me-2 mb-2 text-light\"\n style={{\n backgroundColor: \"#6941C6\",\n borderColor: \"#6941C6\",\n }}\n // href={`https://near.social/#/${ownerId}/widget/Entity?accountId=${accountId}`}\n >\n <i className=\"bi-person-plus\" />\n <span className=\"text-nowrap\">Invite contributor</span>\n </a>\n <Widget\n src={`${ownerId}/widget/CardMenu`}\n props={{\n update: props.update,\n items: [\n {\n text: \"Create new request\",\n icon: \"bi-boxes\",\n },\n {\n text: \"Invite contributors\",\n icon: \"bi-person-plus\",\n },\n {\n text: \"Delete project\",\n icon: \"bi-trash\",\n },\n ],\n }}\n />\n </div>\n </div>\n <div>\n <span className=\"text-muted me-2\">\n Created {new Date(Number(need.start_date)).toLocaleDateString()}\n </span>\n <Widget\n src={`${ownerId}/widget/ActiveIndicator`}\n props={{\n active: need.active,\n activeText: \"Open for proposals\",\n inactiveText: \"Closed\",\n }}\n />\n </div>\n <Widget\n src={`${ownerId}/widget/Tags`}\n pros={{ tags: { [needString]: \"\" } }}\n />\n </div>\n </div>\n <Markdown text={need.description} />\n </div>\n);\n\nconst proposalsCount = Object.keys(\n Near.view(\n ownerId,\n \"get_need_contribution_requests\",\n { account_id: accountId, cid },\n \"final\",\n true\n ) ?? {}\n).length;\n\nconst contributorsCount = Object.keys(\n Near.view(\n ownerId,\n \"get_need_contributions\",\n { account_id: accountId, cid },\n \"final\",\n true\n ) ?? {}\n).length;\n\nconst contentSelector = (\n <Widget\n src={`${ownerId}/widget/TabSelector`}\n props={{\n tab: \"entity\",\n content: state.content,\n search: state.search,\n accountId: props.accountId,\n update: (content) => State.update({ content }),\n buttons: [\n {\n id: \"contributors\",\n text: \"Contributors\",\n icon: \"bi-people\",\n count: contributorsCount,\n },\n {\n id: \"proposals\",\n text: \"Proposals\",\n icon: \"bi-person-down\",\n count: proposalsCount,\n },\n ],\n }}\n />\n);\n\nconst searchBar = (\n <div className=\"w-25 col-12 col-md-10 col-lg-8\">\n <div className=\"card card-sm\">\n <div className=\"card-body row p-0 ps-2 align-items-center\">\n <div className=\"col-auto pe-0 me-0\">\n <i className=\"bi-search\" />\n </div>\n <div className=\"col ms-0\">\n <input\n className=\"form-control border-0\"\n type=\"search\"\n value={state.search}\n placeholder=\"Search\"\n onChange={(e) => State.update({ search: e.target.value })}\n />\n </div>\n </div>\n </div>\n </div>\n);\n\nconst content = {\n proposals: (\n <Widget\n src={`${ownerId}/widget/ContributionRequestList`}\n props={{ accountId, search: state.search, update: props.update, cid }}\n />\n ),\n contributors: (\n <Widget\n src={`${ownerId}/widget/ContributorList`}\n props={{ accountId, search: state.search, update: props.update, cid }}\n />\n ),\n // invitations: ( <Widget\n // src={`${ownerId}/widget/InviteList`}\n // props={{ accountId, search: state.search, update: props.update }}\n // />\n // ),\n}[state.content];\n\nreturn (\n <div className=\"\">\n <div className=\"mb-5\">{body}</div>\n <div className=\"d-flex flex-row justify-content-between ps-3\">\n {contentSelector}\n {searchBar}\n </div>\n <div className=\"px-3 pt-3\">{content}</div>\n </div>\n);\n" } } } } }
Empty result
No logs
Receipt:
Predecessor ID:
Receiver ID:
Gas Burned:
223 Ggas
Tokens Burned:
0 
Transferred 0.01831  to contribut3.near
Empty result
No logs