Browse Source

Replace

qortal-ui-dev
AlphaX-Projects 1 year ago committed by GitHub
parent
commit
282a9a7318
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 137
      plugins/plugins/core/become-minter/components/not-sponsored.js
  2. 114
      plugins/plugins/core/become-minter/components/yes-sponsored.js

137
plugins/plugins/core/become-minter/components/not-sponsored.js

@ -0,0 +1,137 @@
import { LitElement, html } from 'lit';
import { Epml } from '../../../../epml.js';
import '../../components/ButtonIconCopy.js';
import { use, translate, registerTranslateConfig } from 'lit-translate';
registerTranslateConfig({
loader: (lang) => fetch(`/language/${lang}.json`).then((res) => res.json()),
});
import '@polymer/paper-spinner/paper-spinner-lite.js';
import '@material/mwc-button';
import '@material/mwc-textfield';
import '@vaadin/button';
import { pageStyles } from '../become-minter-css.src.js';
const parentEpml = new Epml({ type: 'WINDOW', source: window.parent });
class NotSponsored extends LitElement {
static properties = {
atMount: { type: Function },
isLoadingSponsorshipKeySubmit: { type: Boolean },
sponsorshipKeyValue: { type: String },
addMintingAccountMessage: { type: String },
};
static styles = [pageStyles];
constructor() {
super();
this.isLoadingSponsorshipKeySubmit = false;
this.sponsorshipKeyValue = '';
this.addMintingAccountMessage = '';
this.atMount = () => {};
}
renderErr1Text() {
return html`${translate('nodepage.nchange27')}`;
}
renderErr2Text() {
return html`${translate('nodepage.nchange28')}`;
}
getApiKey() {
const myNode =
window.parent.reduxStore.getState().app.nodeConfig.knownNodes[
window.parent.reduxStore.getState().app.nodeConfig.node
];
let apiKey = myNode.apiKey;
return apiKey;
}
addMintingAccount(e) {
this.isLoadingSponsorshipKeySubmit = true;
this.addMintingAccountMessage = 'Loading...';
parentEpml
.request('apiCall', {
url: `/admin/mintingaccounts?apiKey=${this.getApiKey()}`,
method: 'POST',
body: this.sponsorshipKeyValue,
})
.then((res) => {
if (res === true) {
// refetch data
this.atMount();
this.sponsorshipKeyValue = '';
this.addMintingAccountMessage = this.renderErr1Text();
this.isLoadingSponsorshipKeySubmit = false;
} else {
this.sponsorshipKeyValue = '';
this.addMintingAccountMessage = this.renderErr2Text();
this.isLoadingSponsorshipKeySubmit = false;
}
});
}
inputHandler(e) {
this.sponsorshipKeyValue = e.target.value;
}
render() {
return html`
<div class="inner-container">
<div class="sub-main">
<h2 class="level-black">
${translate('mintingpage.mchange33')}
</h2>
<p class="description">
${translate('mintingpage.mchange34')}
</p>
<h2 class="level-black">
${translate('mintingpage.mchange35')}
</h2>
<p class="description">
${translate('mintingpage.mchange36')}
</p>
<p class="description">
${translate('mintingpage.mchange37')}
</p>
<p class="message">${this.addMintingAccountMessage}</p>
<div class="form-wrapper">
<div class="form-item form-item--input">
<mwc-textfield
?disabled="${this
.isLoadingSponsorshipKeySubmit}"
label="${translate('becomeMinterPage.bchange8')}"
id="addSponsorshipKey"
@input="${this.inputHandler}"
.value="${this.sponsorshipKeyValue || ''}"
fullWidth
>
</mwc-textfield>
</div>
<div class="form-item form-item--button">
<vaadin-button
theme="primary"
?disabled="${this.isLoadingSponsorshipKeySubmit}"
@click="${this.addMintingAccount}"
>
${this.isLoadingSponsorshipKeySubmit === false
? html`${translate('puzzlepage.pchange15')}`
: html`
<paper-spinner-lite active></paper-spinner-lite>
`}
</vaadin-button>
</div>
</div>
</div>
</div>
`;
}
}
window.customElements.define('not-sponsored', NotSponsored);

114
plugins/plugins/core/become-minter/components/yes-sponsored.js

@ -0,0 +1,114 @@
import { LitElement, html } from 'lit';
import { Epml } from '../../../../epml.js';
import '../../components/ButtonIconCopy.js';
import { use, translate, registerTranslateConfig } from 'lit-translate';
registerTranslateConfig({
loader: (lang) => fetch(`/language/${lang}.json`).then((res) => res.json()),
});
import '@polymer/paper-spinner/paper-spinner-lite.js';
import '@material/mwc-button';
import '@material/mwc-textfield';
import '@vaadin/button';
import { blocksNeed } from '../../../utils/blocks-needed.js';
import { pageStyles } from '../become-minter-css.src.js';
class YesSponsored extends LitElement {
static get properties() {
return {
addressInfo: { type: Object },
rewardSharePublicKey: { type: String },
isMinting: {type: Boolean}
};
}
constructor() {
super();
this.addressInfo = {};
this.rewardSharePublicKey = '';
this.isMinting = false
}
static styles = [pageStyles];
_levelUpBlocks() {
let countBlocksString = (
blocksNeed(0) -
(this.addressInfo?.blocksMinted +
this.addressInfo?.blocksMintedAdjustment)
).toString();
return countBlocksString;
}
render() {
return html`
<div class="inner-container">
<div class="column column-center">
<div class="column column-center">
<span class="level-black">
${translate('becomeMinterPage.bchange10')}
</span>
<hr style="width: 75%; color: #eee; border-radius: 80%; margin-bottom: 2rem;">
</div>
<br />
<div class="row row-center gap">
<div class="content-box">
<span class="title">
${translate('walletpage.wchange41')}
</span>
<hr style="color: #eee; border-radius: 90%; margin-bottom: 1rem;">
${this.isMinting ? html`
<h4>${translate('becomeMinterPage.bchange12')}</h4>
` : html`
<h4>${translate('mintingpage.mchange9')}</h4>
`}
</div>
</div>
<div class="row row-center gap">
<div class="content-box">
<span class="title">
${translate('becomeMinterPage.bchange13')}
</span>
<hr style="color: #eee; border-radius: 90%; margin-bottom: 1rem;">
<h4>
${this._levelUpBlocks()}
${translate('mintingpage.mchange26')}
</h4>
</div>
</div>
<div class="row row-center gap">
<div class="content-box">
<span class="title">
${translate('becomeMinterPage.bchange15')}
</span>
<hr style="color: #eee; border-radius: 90%; margin-bottom: 1rem;">
<h4 class="no-margin">
${translate('becomeMinterPage.bchange16')}
</h4>
<div class="row row-center column-center no-wrap">
<p class="address">
${this.rewardSharePublicKey}
</p>
<button-icon-copy
title="${translate('walletpage.wchange3')}"
onSuccessMessage="${translate('walletpage.wchange4')}"
onErrorMessage="${translate('walletpage.wchange39')}"
textToCopy=${this.rewardSharePublicKey}
buttonSize="28px"
iconSize="16px"
color="var(--copybutton)"
offsetLeft="4px"
>
</button-icon-copy>
</div>
</div>
</div>
</div>
</div>
`;
}
}
window.customElements.define('yes-sponsored', YesSponsored);
Loading…
Cancel
Save