-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #83 from OudomMunint/dev
Dev => Main
- Loading branch information
Showing
8 changed files
with
99 additions
and
127 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -38,4 +38,4 @@ jobs: | |
uses: ncipollo/[email protected] | ||
with: | ||
artifacts: "react-github-actions-build" | ||
tag: v1.5.4.6 | ||
tag: v1.5.4.7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
56 changes: 21 additions & 35 deletions
56
src/components/About/Techstack.js → src/components/About/Clients.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,72 +1,58 @@ | ||
import React from "react"; | ||
import { Col, Row } from "react-bootstrap"; | ||
import { CgCPlusPlus } from "react-icons/cg"; | ||
import pubArt from "../../Assets/publicartworkers.png"; | ||
import nsw from "../../Assets/nsw.svg"; | ||
import local from "../../Assets/local.png"; | ||
import nw from "../../Assets/nw.png"; | ||
import air from "../../Assets/air.png"; | ||
import tina from "../../Assets/tina.png"; | ||
import nag from "../../Assets/nag.png"; | ||
import { | ||
DiJavascript1, | ||
DiReact, | ||
DiNodejs, | ||
DiMongodb, | ||
DiPython, | ||
DiGit, | ||
} from "react-icons/di"; | ||
import { | ||
SiPytorch, | ||
SiFirebase, | ||
SiNextdotjs, | ||
} from "react-icons/si"; | ||
// import { | ||
// DiJavascript1, | ||
// DiReact, | ||
// DiNodejs, | ||
// DiMongodb, | ||
// DiPython, | ||
// DiGit, | ||
// } from "react-icons/di"; | ||
// import { | ||
// SiPytorch, | ||
// SiFirebase, | ||
// SiNextdotjs, | ||
// } from "react-icons/si"; | ||
|
||
function Techstack() { | ||
function Clients() { | ||
return ( | ||
<Row style={{ justifyContent: "center", paddingBottom: "50px" }}> | ||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <CgCPlusPlus /> */} | ||
<img src={pubArt} className="img-fluid" alt="avatar" style={{paddingTop:"25px"}}/> | ||
</Col> | ||
|
||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <DiJavascript1 /> */} | ||
<img src={nsw} className="img-fluid" alt="avatar"/> | ||
</Col> | ||
|
||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <DiNodejs /> */} | ||
<img src={local} className="img-fluid" alt="avatar" style={{paddingTop:"5px"}}/> | ||
</Col> | ||
|
||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <DiReact /> */} | ||
<img src={nw} className="img-fluid" alt="avatar" style={{paddingTop:"85px"}}/> | ||
</Col> | ||
|
||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <DiMongodb /> */} | ||
<img src={air} className="img-fluid" alt="avatar"/> | ||
</Col> | ||
|
||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <SiNextdotjs /> */} | ||
<img src={tina} className="img-fluid" alt="avatar"/> | ||
</Col> | ||
|
||
<Col xs={4} md={2} className="tech-icons"> | ||
{/* <SiNextdotjs /> */} | ||
<img src={nag} className="img-fluid" alt="avatar"/> | ||
</Col> | ||
{/* <Col xs={4} md={2} className="tech-icons"> | ||
<DiGit /> | ||
</Col> | ||
<Col xs={4} md={2} className="tech-icons"> | ||
<SiFirebase /> | ||
</Col> | ||
<Col xs={4} md={2} className="tech-icons"> | ||
<DiPython /> | ||
</Col> | ||
<Col xs={4} md={2} className="tech-icons"> | ||
<SiPytorch /> | ||
</Col> */} | ||
</Row> | ||
); | ||
} | ||
|
||
export default Techstack; | ||
export default Clients; |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,75 +1,95 @@ | ||
import React, { useState } from "react"; | ||
|
||
function ContactForm() { | ||
const isDevelopment = process.env.NODE_ENV === "development"; | ||
const [name, setName] = useState(""); | ||
const [email, setEmail] = useState(""); | ||
const [message, setMessage] = useState(""); | ||
|
||
const handleSubmit = async (event) => { | ||
event.preventDefault(); | ||
const data = { name, email, message }; | ||
let data = { name, email, message }; | ||
try { | ||
console.log('Form submission successful:'); | ||
// clear form | ||
setName(''); | ||
setEmail(''); | ||
setMessage(''); | ||
data = { name: "testUser1", email: "[email protected]", message: "Hello, this is a test message." }; | ||
console.log('Form submission successful:'); | ||
console.log(data); | ||
} catch (error) { | ||
console.error('Form submission error:', error); | ||
console.log('Error caught'); | ||
} | ||
}; | ||
|
||
if (isDevelopment) { | ||
try { | ||
document.getElementsByClassName("submit").addEventListener("click", handleSubmit); | ||
} | ||
catch (error) { | ||
console.error('Error:', error); | ||
} | ||
} | ||
else { | ||
try { | ||
document.getElementsByClassName("submit").removeEventListener("click", handleSubmit); | ||
} | ||
catch (error) { | ||
console.error('Error:', error); | ||
} | ||
} | ||
|
||
return ( | ||
<> | ||
<> | ||
<form name="contact" netlify="true" netlify-honeypot="bot-field" data-netlify-recaptcha="true" hidden> | ||
<input type="text" name="name" /> | ||
<input type="email" name="email" /> | ||
<textarea name="message"></textarea> | ||
<input type="text" name="name" /> | ||
<input type="email" name="email" /> | ||
<textarea name="message"></textarea> | ||
</form> | ||
|
||
<div className="formFlex"> | ||
<div className="form"> | ||
<div className="top-bar"> | ||
<span></span> | ||
<span></span> | ||
<span></span> | ||
</div> | ||
<div className="title">Get in touch!</div> | ||
<form name="contact" method="POST" data-netlify-recaptcha="true"> | ||
<input type="hidden" name="form-name" value="contact" /> | ||
|
||
{/* Name */} | ||
<div className="input-container ic1"> | ||
<label className="form-label" htmlFor="name"></label> | ||
<input className="form-control input" type="text" id="name" name="name" value={name} onChange={(e) => setName(e.target.value)} | ||
placeholder="Name" | ||
required /> | ||
<div className="formFlex"> | ||
<div className="form"> | ||
<div className="top-bar"> | ||
<span></span> | ||
<span></span> | ||
<span></span> | ||
</div> | ||
<div className="title">Get in touch!</div> | ||
<form name="contact" method="POST" data-netlify-recaptcha="true"> | ||
<input type="hidden" name="form-name" value="contact" /> | ||
|
||
{/* Email */} | ||
<div className="input-container ic2"> | ||
<label className="form-label" htmlFor="email"></label> | ||
<input className="form-control input" type="email" id="email" name="email" value={email} onChange={(e) => setEmail(e.target.value)} | ||
placeholder="Email" | ||
required/> | ||
</div> | ||
{/* Name */} | ||
<div className="input-container ic1"> | ||
<label className="form-label" htmlFor="name"></label> | ||
<input className="form-control input" type="text" id="name" name="name" value={name} onChange={(e) => setName(e.target.value)} | ||
placeholder="Name" | ||
required /> | ||
</div> | ||
|
||
{/* Message */} | ||
<div className="input-container ic2"> | ||
<label className="form-label" htmlFor="message"></label> | ||
<textarea className="form-control input from-textarea" id="message" name="message" value={message} onChange={(e) => setMessage(e.target.value)} | ||
placeholder="Message" | ||
required /> | ||
</div> | ||
<div data-netlify-recaptcha="true" className="reCaptcha"></div> | ||
{/* Submit */} | ||
<button className="btn btn-danger submit" type="submit" style={{ position: "relative", marginTop: "68px" }}> | ||
Submit | ||
</button> | ||
</form> | ||
{/* Email */} | ||
<div className="input-container ic2"> | ||
<label className="form-label" htmlFor="email"></label> | ||
<input className="form-control input" type="email" id="email" name="email" value={email} onChange={(e) => setEmail(e.target.value)} | ||
placeholder="Email" | ||
required /> | ||
</div> | ||
|
||
{/* Message */} | ||
<div className="input-container ic2"> | ||
<label className="form-label" htmlFor="message"></label> | ||
<textarea className="form-control input from-textarea" id="message" name="message" value={message} onChange={(e) => setMessage(e.target.value)} | ||
placeholder="Message" | ||
required /> | ||
</div> | ||
<div data-netlify-recaptcha="true" className="reCaptcha"></div> | ||
{/* Submit */} | ||
<button className="btn btn-danger submit" type="submit" style={{ position: "relative", marginTop: "68px" }}> | ||
Submit | ||
</button> | ||
</form> | ||
</div> | ||
</div> | ||
</div> | ||
</> | ||
); | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters