|
|
|
@ -9,6 +9,16 @@ import ReplayIcon from "@material-ui/icons/Replay"; |
|
|
|
|
import sciense_6 from "../../assets/images/sciense-6.png"; |
|
|
|
|
|
|
|
|
|
import "./index.scss"; |
|
|
|
|
|
|
|
|
|
const maxDesktopSize = 1250; |
|
|
|
|
|
|
|
|
|
const fontSize = { |
|
|
|
|
desktop: { |
|
|
|
|
h1: window.innerWidth > maxDesktopSize ? 25 : window.innerWidth / 70, |
|
|
|
|
p: window.innerHeight > maxDesktopSize ? 15 : window.innerWidth / 90, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
export default class QRScan extends Component { |
|
|
|
|
state = { |
|
|
|
|
value: null, |
|
|
|
@ -20,8 +30,53 @@ export default class QRScan extends Component { |
|
|
|
|
<> |
|
|
|
|
{window.innerWidth > 1000 ? ( |
|
|
|
|
<> |
|
|
|
|
<div className="qr-scan d-flex flex-column"> |
|
|
|
|
<div className="qr-scan d-flex flex-column align-items-center"> |
|
|
|
|
<Navbar /> |
|
|
|
|
<div className="qr-scan__box d-flex flex-column"> |
|
|
|
|
<header className="qr-scan__box--header d-flex flex-column"> |
|
|
|
|
<h1 style={{ fontSize: fontSize.desktop.h1 }}>نکته</h1> |
|
|
|
|
<p style={{ fontSize: fontSize.desktop.p }}> |
|
|
|
|
لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار |
|
|
|
|
دهید تا اسکن دوربین انجام شود |
|
|
|
|
</p> |
|
|
|
|
</header> |
|
|
|
|
<div className="qr-scan__box--select d-flex"> |
|
|
|
|
<select |
|
|
|
|
onChange={(e) => |
|
|
|
|
this.setState({ facingMode: e.target.value }) |
|
|
|
|
} |
|
|
|
|
> |
|
|
|
|
<option value="environment">دوربین عقب</option> |
|
|
|
|
<option value="user">دوربین جلو</option> |
|
|
|
|
</select> |
|
|
|
|
</div> |
|
|
|
|
<section className="qr-scan__box--camera d-flex justify-content-center align-items-center"> |
|
|
|
|
{this.state.value !== null ? ( |
|
|
|
|
<div |
|
|
|
|
style={{ zIndex: 1000 }} |
|
|
|
|
onClick={() => this.setState({ value: null })} |
|
|
|
|
> |
|
|
|
|
<ReplayIcon style={{ fontSize: 40, color: "grey" }} /> |
|
|
|
|
</div> |
|
|
|
|
) : ( |
|
|
|
|
<Scanner parent={this} /> |
|
|
|
|
)} |
|
|
|
|
</section> |
|
|
|
|
{this.state.value === null ? null : ( |
|
|
|
|
<p style={{ fontSize: fontSize.desktop.p }}> |
|
|
|
|
{this.state.value.text} |
|
|
|
|
</p> |
|
|
|
|
)} |
|
|
|
|
<p |
|
|
|
|
style={{ fontSize: fontSize.desktop.p }} |
|
|
|
|
className="qr-scan__box--text d-flex" |
|
|
|
|
> |
|
|
|
|
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با |
|
|
|
|
استفاده از طراحان گرافیک است. چاپگرها و متون بلکه روزنامه و |
|
|
|
|
مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی |
|
|
|
|
تکنولوژی مورد نیاز و کاربردهای |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<Footer /> |
|
|
|
|
</> |
|
|
|
|