From e4e0f1a71e06f462b05a34b23360453ed87559dc Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Wed, 4 Sep 2024 11:02:07 +0900 Subject: [PATCH 001/100] feat: add getProject function in project.ts --- dapp/src/components/project.ts | 50 ++++++++++++++++++++++++++++++++-- 1 file changed, 48 insertions(+), 2 deletions(-) diff --git a/dapp/src/components/project.ts b/dapp/src/components/project.ts index 9fd88d3..085fc2c 100644 --- a/dapp/src/components/project.ts +++ b/dapp/src/components/project.ts @@ -1,10 +1,11 @@ -import pkg from "js-sha3"; +import * as pkg from "js-sha3"; const { keccak256 } = pkg; import { Buffer } from "buffer"; -import { kit, loadedPublicKey } from "./stellar-wallets-kit.ts"; +import { kit, loadedPublicKey } from "./stellar-wallets-kit"; import Versioning from "../contracts/soroban_versioning"; +import type { Project } from "soroban_versioning"; const projectState: { project_name: string | undefined; @@ -14,6 +15,16 @@ const projectState: { project_id: undefined, }; +const projectInfo: { + project_maintainers: string[] | undefined; + project_config_url: string | undefined; + project_config_hash: string | undefined; +} = { + project_maintainers: undefined, + project_config_url: undefined, + project_config_hash: undefined, +}; + function loadedProjectId(): Buffer | undefined { return projectState.project_id; } @@ -26,6 +37,26 @@ function setProjectId(project_name: string): void { ); } +function loadedProjectInfo(): Project | undefined { + if (!projectInfo.project_maintainers || !projectInfo.project_config_url || !projectInfo.project_config_hash || !projectState.project_name) { + return undefined; + } + return { + maintainers: projectInfo.project_maintainers, + name: projectState.project_name, + config: { + url: projectInfo.project_config_url, + hash: projectInfo.project_config_hash + } + }; +} + +function setProject(project: Project): void { + projectInfo.project_maintainers = project.maintainers; + projectInfo.project_config_url = project.config.url; + projectInfo.project_config_hash = project.config.hash; +} + async function getProjectHash(): Promise { if (projectState.project_id === undefined) { alert("No project defined"); @@ -100,6 +131,7 @@ async function registerProject( hash: config_hash, domain_contract_id: domain_contract_id, }); + console.log("tx:", tx); try { await tx.signAndSend({ signTransaction: async (xdr) => { @@ -114,10 +146,24 @@ async function registerProject( } } +async function getProject(): Promise { + if (projectState.project_id === undefined) { + alert("No project defined"); + return; + } + const res = await Versioning.get_project({ + project_key: projectState.project_id, + }); + return res.result; +} + export { commitHash, getProjectHash, loadedProjectId, + loadedProjectInfo, registerProject, setProjectId, + getProject, + setProject, }; From c39cd48be2a1300e38885e3ab46ee263a409146e Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Wed, 4 Sep 2024 11:03:14 +0900 Subject: [PATCH 002/100] chore: add check project/select path function in set project page --- dapp/src/components/SetProject.astro | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/dapp/src/components/SetProject.astro b/dapp/src/components/SetProject.astro index 68d705d..1ae27e1 100644 --- a/dapp/src/components/SetProject.astro +++ b/dapp/src/components/SetProject.astro @@ -32,9 +32,7 @@ const TANSU_CONTRACT_ID = import.meta.env.PUBLIC_TANSU_CONTRACT_ID; aria-controls="set-project" class="w-full py-5 bg-zinc-900 rounded-[14px] justify-center gap-2.5 inline-flex" > - Set project + Set project @@ -45,7 +43,7 @@ const TANSU_CONTRACT_ID = import.meta.env.PUBLIC_TANSU_CONTRACT_ID; \ No newline at end of file diff --git a/dapp/src/components/Topic.astro b/dapp/src/components/Topic.astro index 7b7cc05..2483a56 100644 --- a/dapp/src/components/Topic.astro +++ b/dapp/src/components/Topic.astro @@ -1,12 +1,12 @@ --- -const { title, description } = Astro.props; +const { title, description, id } = Astro.props; --- -
+
{title} -

+

{description}

diff --git a/dapp/src/pages/commit.astro b/dapp/src/pages/commit.astro index cf9189a..39bdb52 100644 --- a/dapp/src/pages/commit.astro +++ b/dapp/src/pages/commit.astro @@ -2,8 +2,9 @@ import Layout from "../layouts/Layout.astro"; import GetCommit from "../components/GetCommit.astro"; -import Commit from "../components/Commit.astro"; +import CommitComponent from "../components/Commit.astro"; import Container from "../components/Container.astro"; +import ProjectInfo from "../components/ProjectInfo.astro"; --- \ No newline at end of file From 0eed507dc538f5373294fbde2cf91974c6e651b0 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Wed, 4 Sep 2024 14:02:50 +0900 Subject: [PATCH 006/100] feat: add update config function --- dapp/src/components/project.ts | 42 ++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/dapp/src/components/project.ts b/dapp/src/components/project.ts index 085fc2c..c746ae7 100644 --- a/dapp/src/components/project.ts +++ b/dapp/src/components/project.ts @@ -157,6 +157,47 @@ async function getProject(): Promise { return res.result; } +async function updateConfig( + maintainers: string, + config_url: string, + config_hash: string, +): Promise { + if (!projectState.project_id) { + alert("No project defined"); + return false; + } + const publicKey = loadedPublicKey(); + + if (!publicKey) { + alert("Please connect your wallet first"); + return false; + } else { + Versioning.options.publicKey = publicKey; + } + const maintainers_ = maintainers.split(","); + + const tx = await Versioning.update_config({ + maintainer: publicKey, + key: projectState.project_id, + maintainers: maintainers_, + url: config_url, + hash: config_hash, + }); + + try { + await tx.signAndSend({ + signTransaction: async (xdr) => { + const { signedTxXdr } = await kit.signTransaction(xdr); + return signedTxXdr; + }, + }); + return true; + } catch (e) { + console.error(e); + return false; + } +} + export { commitHash, getProjectHash, @@ -166,4 +207,5 @@ export { setProjectId, getProject, setProject, + updateConfig, }; From b4ca722da93c5a7aaaa314c7e40b54803d6e87bd Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Wed, 4 Sep 2024 14:03:39 +0900 Subject: [PATCH 007/100] feat: add update config function in commit page --- dapp/src/components/ProjectInfo.astro | 129 +++++++++++++++++++++++++- 1 file changed, 127 insertions(+), 2 deletions(-) diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index d56368e..4014e5f 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -1,9 +1,21 @@ --- import Topic from "./utils/Topic.astro"; +import Modal from "./utils/Modal.astro"; --- -
+
+
+ + + + \ No newline at end of file From 3c94b9e5894db5e55ec70fac69e9256b499846be Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Wed, 4 Sep 2024 16:41:16 +0900 Subject: [PATCH 008/100] chore: keep displaying connected wallet --- dapp/src/components/ConnectWallet.astro | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dapp/src/components/ConnectWallet.astro b/dapp/src/components/ConnectWallet.astro index d0f39bd..5b88e42 100644 --- a/dapp/src/components/ConnectWallet.astro +++ b/dapp/src/components/ConnectWallet.astro @@ -19,7 +19,7 @@ \ No newline at end of file + diff --git a/dapp/src/components/SetProject.astro b/dapp/src/components/SetProject.astro index 0ed93ec..6dbe919 100644 --- a/dapp/src/components/SetProject.astro +++ b/dapp/src/components/SetProject.astro @@ -60,7 +60,7 @@ const TANSU_CONTRACT_ID = import.meta.env.PUBLIC_TANSU_CONTRACT_ID; setProjectId(project_name.value); const project = await getProject(); if (project && project.name && project.config && project.maintainers) { - setProject(project); + setProject(project); navigate("/commit"); } else { navigate("/register") diff --git a/dapp/src/components/utils/Modal.astro b/dapp/src/components/utils/Modal.astro index a35b767..8f9fcab 100644 --- a/dapp/src/components/utils/Modal.astro +++ b/dapp/src/components/utils/Modal.astro @@ -38,4 +38,4 @@ const { id, title } = Astro.props; } }); }); - \ No newline at end of file + From d599bef4cf5e3df98fb82cf1939d493348b2cc4c Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Thu, 5 Sep 2024 16:48:16 +0900 Subject: [PATCH 012/100] chore: update project info component ui --- dapp/src/components/ProjectInfo.astro | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index 9efa507..2b7034e 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -4,7 +4,7 @@ import Modal from "./utils/Modal.astro"; ---
- +
From b3f26acea1f128c9fff66c6c4e8c841d95550efe Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Thu, 5 Sep 2024 21:34:06 +0900 Subject: [PATCH 017/100] style: set color theme as extend in tailwindconfig --- dapp/tailwind.config.mjs | 42 ++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/dapp/tailwind.config.mjs b/dapp/tailwind.config.mjs index 9ee9e5f..4b5793b 100644 --- a/dapp/tailwind.config.mjs +++ b/dapp/tailwind.config.mjs @@ -8,31 +8,31 @@ export default { lg: "976px", xl: "1440px", }, - colors: { - black: "#000000", - white: "#FFFFFF", - gray: "#0D0C22", - stone: "#231F20", - lime: "#B9FF66", - zinc: { - 100: "#F3F3F3", - 200: "#F0F0F0", - 300: "#D9D9D9", - 400: "#D8D8D8", - 500: "#898989", - 600: "#B0B0B0", - 700: "#787878", - 800: "#292A32", - 900: "#191A23", - }, - }, - boxShadow: { - card: "0px 5px 0px 0px #191A23", - }, extend: { + colors: { + black: "#000000", + white: "#FFFFFF", + gray: "#0D0C22", + stone: "#231F20", + lime: "#B9FF66", + zinc: { + 100: "#F3F3F3", + 200: "#F0F0F0", + 300: "#D9D9D9", + 400: "#D8D8D8", + 500: "#898989", + 600: "#B0B0B0", + 700: "#787878", + 800: "#292A32", + 900: "#191A23", + }, + }, fontFamily: { SpaceGrotesk: ["Space Grotesk", "sans-serif"], }, }, + boxShadow: { + card: "0px 5px 0px 0px #191A23", + }, }, }; From b026f268800173328fe14ee582b741e5dad378a1 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Thu, 5 Sep 2024 22:03:20 +0900 Subject: [PATCH 018/100] feat: create formatTime and Date function --- dapp/src/service/utils.ts | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 dapp/src/service/utils.ts diff --git a/dapp/src/service/utils.ts b/dapp/src/service/utils.ts new file mode 100644 index 0000000..69bbc52 --- /dev/null +++ b/dapp/src/service/utils.ts @@ -0,0 +1,23 @@ +export function formatTime(dateString: string): string { + const date = new Date(dateString); + const today = new Date(); + + if ( + date.getDate() === today.getDate() && + date.getMonth() === today.getMonth() && + date.getFullYear() === today.getFullYear() + ) { + const timeOptions: Intl.DateTimeFormatOptions = { hour: '2-digit', minute: '2-digit' }; + const formattedTime = date.toLocaleTimeString(undefined, timeOptions); + return `Today, ${formattedTime}`; + } else { + const dateOptions: Intl.DateTimeFormatOptions = { year: 'numeric', month: 'long', day: 'numeric' }; + return date.toLocaleDateString(undefined, dateOptions); + } +} + +export function formatDate(dateString: string): string { + const date = new Date(dateString); + const dateOptions: Intl.DateTimeFormatOptions = { year: 'numeric', month: 'long', day: 'numeric' }; + return date.toLocaleDateString(undefined, dateOptions); +} From a8a515331010311950fd60f77cfd58e69ce93162 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Thu, 5 Sep 2024 23:37:28 +0900 Subject: [PATCH 019/100] feat: add commit history section --- dapp/src/components/CommitHistory.astro | 41 +++++++++++++- dapp/src/components/CommitRecord.astro | 71 +++++++++++++++++++++++++ dapp/src/components/ProjectInfo.astro | 4 +- dapp/src/constants/CommitHistory.js | 37 +++++++++++++ 4 files changed, 150 insertions(+), 3 deletions(-) create mode 100644 dapp/src/components/CommitRecord.astro create mode 100644 dapp/src/constants/CommitHistory.js diff --git a/dapp/src/components/CommitHistory.astro b/dapp/src/components/CommitHistory.astro index 406d6bc..1fdcf86 100644 --- a/dapp/src/components/CommitHistory.astro +++ b/dapp/src/components/CommitHistory.astro @@ -1 +1,40 @@ -
+--- +import { getCommitHistory } from '../constants/CommitHistory'; +import CommitRecord from './CommitRecord.astro'; +import { formatDate } from '../service/utils'; + +const commitHistory = getCommitHistory(); +--- + +
+ {commitHistory.map((day) => ( +
+

+
+ {formatDate(day.date)} +

+
+ {day.commits.map((commit) => ( +
+
+ +
+ ))} +
+
+ ))} +
+ + diff --git a/dapp/src/components/CommitRecord.astro b/dapp/src/components/CommitRecord.astro new file mode 100644 index 0000000..3e2805c --- /dev/null +++ b/dapp/src/components/CommitRecord.astro @@ -0,0 +1,71 @@ +--- +interface Props { + message: string; + date: string; + authorName: string; + authorGithubLink: string; + sha: string; + commitLink: string; +} + +const { message, date, authorName, authorGithubLink, sha, commitLink } = Astro.props; + +import { formatTime } from '../service/utils'; +--- + +
+
+ {message} +
+ {authorName} + committed on + {formatTime(date)} +
+
+
+ {sha.substring(0, 7)} + +
+
+ + + diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index bff3180..e43a698 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -23,7 +23,7 @@ import CommitHistory from "./CommitHistory.astro";
-
+

Project Name:

@@ -40,7 +40,7 @@ import CommitHistory from "./CommitHistory.astro"; Link to GitHub
-
+
diff --git a/dapp/src/constants/CommitHistory.js b/dapp/src/constants/CommitHistory.js new file mode 100644 index 0000000..babb414 --- /dev/null +++ b/dapp/src/constants/CommitHistory.js @@ -0,0 +1,37 @@ +const demoCommitHistory = [ + { + date: "2023-04-15", + commits: [ + { + message: "Update README.md", + author: { name: "John Doe", html_url: "https://github.com/johndoe" }, + commit_date: "2024-09-06T14:32:41Z", + html_url: "https://github.com/user/repo/commit/1234567", + sha: "1234567890abcdef1234567890abcdef12345678" + }, + { + message: "Fix bug in login component", + author: { name: "Jane Smith", html_url: "https://github.com/janesmith" }, + commit_date: "2024-09-05T10:15:22Z", + html_url: "https://github.com/user/repo/commit/abcdefg", + sha: "abcdefg1234567890abcdefg1234567890abcdef" + } + ] + }, + { + date: "2023-04-14", + commits: [ + { + message: "Implement new feature", + author: { name: "Alice Johnson", html_url: "https://github.com/alicejohnson" }, + commit_date: "2024-09-04T16:45:33Z", + html_url: "https://github.com/user/repo/commit/7654321", + sha: "7654321fedcba9876543210fedcba9876543210" + } + ] + } +]; + +export function getCommitHistory() { + return demoCommitHistory; +} \ No newline at end of file From 7d1b143ea6ac76207c9addee7c9d19b1a772b1fc Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Fri, 6 Sep 2024 02:48:44 +0900 Subject: [PATCH 020/100] feat: create get commit function --- dapp/src/service/GithubService.ts | 58 +++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 dapp/src/service/GithubService.ts diff --git a/dapp/src/service/GithubService.ts b/dapp/src/service/GithubService.ts new file mode 100644 index 0000000..a2d6afb --- /dev/null +++ b/dapp/src/service/GithubService.ts @@ -0,0 +1,58 @@ +import axios from 'axios'; + +interface FormattedCommit { + message: string; + author: { name: string; html_url: string }; + commit_date: string; + html_url: string; + sha: string; +} + +async function getCommitHistory(username: string, repo: string, perPage: number = 30, page: number = 1): Promise<{ date: string; commits: FormattedCommit[] }[]> { + try { + const response = await axios.get( + `https://api.github.com/repos/${username}/${repo}/commits`, + { + params: { per_page: perPage, page: page }, + headers: { 'Accept': 'application/vnd.github.v3+json' } + } + ); + + const formattedCommits = response.data.map((commit: any) => ({ + message: commit.commit.message, + author: { + name: commit.commit.author.name, + html_url: commit.author ? commit.author.html_url : '', + }, + commit_date: commit.commit.author.date, + html_url: commit.html_url, + sha: commit.sha, + })); + + // Group commits by date + const groupedCommits = formattedCommits.reduce((acc: Record, commit: FormattedCommit) => { + const date = new Date(commit.commit_date).toISOString().split('T')[0]; + if (!date) { + return acc; + } + if (!acc[date]) { + acc[date] = []; + } + acc[date].push(commit); + return acc; + }, {}); + + // Convert grouped commits to array format + return Object.entries(groupedCommits).map(([date, commits]) => ({ + date, + commits: commits as FormattedCommit[], + })); + } catch (error) { + console.error('Error fetching commit history:', error); + throw error; + } +} + +export { + getCommitHistory, +}; From 24536347a326048ecd7812d6140f6fef67255397 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Fri, 6 Sep 2024 03:23:33 +0900 Subject: [PATCH 021/100] chore: update github service --- dapp/src/service/GithubService.ts | 8 +------- dapp/src/types/github.ts | 7 +++++++ 2 files changed, 8 insertions(+), 7 deletions(-) create mode 100644 dapp/src/types/github.ts diff --git a/dapp/src/service/GithubService.ts b/dapp/src/service/GithubService.ts index a2d6afb..2bdf91f 100644 --- a/dapp/src/service/GithubService.ts +++ b/dapp/src/service/GithubService.ts @@ -1,12 +1,6 @@ import axios from 'axios'; -interface FormattedCommit { - message: string; - author: { name: string; html_url: string }; - commit_date: string; - html_url: string; - sha: string; -} +import type { FormattedCommit } from '../types/github'; async function getCommitHistory(username: string, repo: string, perPage: number = 30, page: number = 1): Promise<{ date: string; commits: FormattedCommit[] }[]> { try { diff --git a/dapp/src/types/github.ts b/dapp/src/types/github.ts new file mode 100644 index 0000000..24a4eaa --- /dev/null +++ b/dapp/src/types/github.ts @@ -0,0 +1,7 @@ +export interface FormattedCommit { + message: string; + author: { name: string; html_url: string }; + commit_date: string; + html_url: string; + sha: string; +} \ No newline at end of file From d482522a1a06995f8cb4af93b46327aa2f1f488d Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Fri, 6 Sep 2024 03:25:26 +0900 Subject: [PATCH 022/100] chore: update commit history table --- dapp/src/components/CommitHistory.astro | 17 ++++++------ dapp/src/components/CommitRecord.astro | 37 ++++++++++++++++++++++--- dapp/src/service/utils.ts | 4 +-- 3 files changed, 44 insertions(+), 14 deletions(-) diff --git a/dapp/src/components/CommitHistory.astro b/dapp/src/components/CommitHistory.astro index 1fdcf86..1c89042 100644 --- a/dapp/src/components/CommitHistory.astro +++ b/dapp/src/components/CommitHistory.astro @@ -1,22 +1,23 @@ --- -import { getCommitHistory } from '../constants/CommitHistory'; +import { getCommitHistory } from '../service/GithubService'; import CommitRecord from './CommitRecord.astro'; import { formatDate } from '../service/utils'; +import type { FormattedCommit } from '../types/github'; -const commitHistory = getCommitHistory(); +const commitHistory = await getCommitHistory('tupui', 'soroban-versioning'); --- -
- {commitHistory.map((day) => ( +
+ {commitHistory && commitHistory.length > 0 && commitHistory.map((day: { date: string; commits: FormattedCommit[] }) => (
-

-
+

+
{formatDate(day.date)}

- {day.commits.map((commit) => ( + {day.commits.map((commit: FormattedCommit) => (
-
+
line.trim()).filter(Boolean); +const firstLine = formattedMessage[0]; +const hasMoreLines = formattedMessage.length > 1; --- -
-
- {message} +
+
+
+ {firstLine} + {hasMoreLines && ( + + )} +
+ {hasMoreLines && ( + + )}
{authorName} committed on {formatTime(date)}
-
+
{sha.substring(0, 7)}
- +
@@ -115,17 +115,11 @@ import CommitHistory from "./CommitHistory.astro"; import { loadedPublicKey } from "./stellar-wallets-kit"; document.addEventListener("astro:page-load", () => { - const topicElement = document.getElementById("project-name-topic"); - const topicDescriptionElement = topicElement?.querySelector("p"); const modal = document.getElementById("update-config-modal") as HTMLDialogElement; function updateProjectInfo() { const projectInfo = loadedProjectInfo(); if (projectInfo) { - console.log("projectInfo:", projectInfo); - if (topicDescriptionElement) { - topicDescriptionElement.textContent = projectInfo.name; - } const projectNameElement = document.getElementById("project-name-value"); if (projectNameElement) { projectNameElement.textContent = projectInfo.name; From 4989e603e6a64db9fae76f25e58a1096b5744401 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Fri, 6 Sep 2024 17:30:30 +0900 Subject: [PATCH 024/100] chore: highlight latest commit in history --- dapp/src/components/CommitRecord.astro | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/dapp/src/components/CommitRecord.astro b/dapp/src/components/CommitRecord.astro index f5b66f0..c19a353 100644 --- a/dapp/src/components/CommitRecord.astro +++ b/dapp/src/components/CommitRecord.astro @@ -17,7 +17,7 @@ const firstLine = formattedMessage[0]; const hasMoreLines = formattedMessage.length > 1; --- -
+
{firstLine} @@ -47,6 +47,8 @@ const hasMoreLines = formattedMessage.length > 1;
From 3069ad71e117d966fd3425097b9f80eb0575feed Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Sat, 7 Sep 2024 11:15:41 +0900 Subject: [PATCH 033/100] feat: create utils functions related get link --- dapp/src/service/utils.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/dapp/src/service/utils.ts b/dapp/src/service/utils.ts index 8be0428..94ea037 100644 --- a/dapp/src/service/utils.ts +++ b/dapp/src/service/utils.ts @@ -21,3 +21,18 @@ export function formatDate(dateString: string): string { const dateOptions: Intl.DateTimeFormatOptions = { year: 'numeric', month: 'short', day: 'numeric' }; return date.toLocaleDateString(undefined, dateOptions); } + +export function getGithubContentUrl(username: string, repoName: string, filePath: string): string { + return `https://raw.githubusercontent.com/${username}/${repoName}/${filePath}`; +} + +export function getGithubContentlink(username: string, repoName: string, filePath: string): string { + return `https://github.com/${username}/${repoName}/blob/${filePath}`; +} + +export function getAuthorRepo(repoUrl: string): { username: string | undefined; repoName: string | undefined } { + const match = repoUrl.match(/https\:\/\/github\.com\/([^\/]+)\/([^\/]+)/); + if (!match || !match[1] || !match[2]) return {username: undefined, repoName: undefined}; + return { username: match[1], repoName: match[2] }; +} + From 042a38f5508943e706b9a2e03306a327d875c057 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Sat, 7 Sep 2024 16:18:27 +0900 Subject: [PATCH 034/100] chore: jump to latest commit --- dapp/src/components/CommitRecord.astro | 1 + dapp/src/components/ProjectInfo.astro | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/dapp/src/components/CommitRecord.astro b/dapp/src/components/CommitRecord.astro index 32b79c1..38053b1 100644 --- a/dapp/src/components/CommitRecord.astro +++ b/dapp/src/components/CommitRecord.astro @@ -101,6 +101,7 @@ const hasMoreLines = formattedMessage.length > 1; const recordSha = record.getAttribute('data-sha'); if (recordSha === latestSha) { record.classList.add('border-2', 'border-blue-300', 'bg-zinc-300'); + record.id = 'latest-commit-record'; const indicator = document.createElement('div'); indicator.className = 'absolute top-0.5 left-1 text-xs font-bold tracking-tighter leading-3 bg-lime rounded-sm p-0.5'; indicator.textContent = 'latest commit'; diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index 92b38fa..20bb5dd 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -264,6 +264,12 @@ import CommitHistory from "./CommitHistory.astro"; viewCommitText.textContent = "Hide Commit History"; commitIconUp.classList.add("hidden"); commitIconDown.classList.remove("hidden"); + setTimeout(() => { + const latestCommit = document.getElementById('latest-commit-record'); + if (latestCommit) { + latestCommit.scrollIntoView({ behavior: 'smooth', block: 'center' }); + } + }, 1000); } }); } From e27177ddddc5b520f454e4bccc09c209d6a3602e Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Mon, 9 Sep 2024 11:30:32 +0900 Subject: [PATCH 035/100] chore: fix scroll bar error and jump delay time --- dapp/src/components/CommitHistory.astro | 9 +-------- dapp/src/components/CommitRecord.astro | 2 +- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/dapp/src/components/CommitHistory.astro b/dapp/src/components/CommitHistory.astro index 1c89042..688b2e4 100644 --- a/dapp/src/components/CommitHistory.astro +++ b/dapp/src/components/CommitHistory.astro @@ -7,7 +7,7 @@ import type { FormattedCommit } from '../types/github'; const commitHistory = await getCommitHistory('tupui', 'soroban-versioning'); --- -
+
{commitHistory && commitHistory.length > 0 && commitHistory.map((day: { date: string; commits: FormattedCommit[] }) => (

@@ -32,10 +32,3 @@ const commitHistory = await getCommitHistory('tupui', 'soroban-versioning');

))}
- - diff --git a/dapp/src/components/CommitRecord.astro b/dapp/src/components/CommitRecord.astro index 38053b1..579b6af 100644 --- a/dapp/src/components/CommitRecord.astro +++ b/dapp/src/components/CommitRecord.astro @@ -71,7 +71,7 @@ const hasMoreLines = formattedMessage.length > 1; `; } - }, 2000); + }, 10); } catch (err) { console.error('Failed to copy: ', err); } From f743a74b6f9f2211e06160b8bbdefa46c34574bd Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Mon, 9 Sep 2024 16:35:22 +0900 Subject: [PATCH 036/100] feat: add astro/react --- dapp/astro.config.mjs | 4 ++-- dapp/package.json | 1 + dapp/tsconfig.json | 3 +++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/dapp/astro.config.mjs b/dapp/astro.config.mjs index 9f48763..1b7a245 100644 --- a/dapp/astro.config.mjs +++ b/dapp/astro.config.mjs @@ -1,8 +1,8 @@ import { defineConfig } from "astro/config"; - +import react from '@astrojs/react'; import tailwind from "@astrojs/tailwind"; // https://astro.build/config export default defineConfig({ - integrations: [tailwind()], + integrations: [react(), tailwind()], }); diff --git a/dapp/package.json b/dapp/package.json index cd04780..7921270 100644 --- a/dapp/package.json +++ b/dapp/package.json @@ -1,6 +1,7 @@ { "dependencies": { "@astrojs/check": "^0.9.3", + "@astrojs/react": "^3.6.2", "@astrojs/tailwind": "^5.1.0", "@creit.tech/stellar-wallets-kit": "^1.0.0", "astro": "^4.2.4", diff --git a/dapp/tsconfig.json b/dapp/tsconfig.json index adbe06b..c64ef6d 100644 --- a/dapp/tsconfig.json +++ b/dapp/tsconfig.json @@ -1,4 +1,7 @@ { + "compilerOptions": { + "jsx": "react" + }, "extends": "astro/tsconfigs/strictest", "exclude": ["packages"] } From 4755873fe9ed44eeb442773b897388eb4311aa8c Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Mon, 9 Sep 2024 17:38:49 +0900 Subject: [PATCH 037/100] feat: display real commit history --- dapp/src/components/CommitHistory.astro | 34 ------- dapp/src/components/CommitHistory.jsx | 50 ++++++++++ dapp/src/components/CommitRecord.astro | 121 ------------------------ dapp/src/components/CommitRecord.jsx | 74 +++++++++++++++ dapp/src/components/ProjectInfo.astro | 21 +++- dapp/src/service/StateService.ts | 27 ++++++ 6 files changed, 168 insertions(+), 159 deletions(-) delete mode 100644 dapp/src/components/CommitHistory.astro create mode 100644 dapp/src/components/CommitHistory.jsx delete mode 100644 dapp/src/components/CommitRecord.astro create mode 100644 dapp/src/components/CommitRecord.jsx diff --git a/dapp/src/components/CommitHistory.astro b/dapp/src/components/CommitHistory.astro deleted file mode 100644 index 688b2e4..0000000 --- a/dapp/src/components/CommitHistory.astro +++ /dev/null @@ -1,34 +0,0 @@ ---- -import { getCommitHistory } from '../service/GithubService'; -import CommitRecord from './CommitRecord.astro'; -import { formatDate } from '../service/utils'; -import type { FormattedCommit } from '../types/github'; - -const commitHistory = await getCommitHistory('tupui', 'soroban-versioning'); ---- - -
- {commitHistory && commitHistory.length > 0 && commitHistory.map((day: { date: string; commits: FormattedCommit[] }) => ( -
-

-
- {formatDate(day.date)} -

-
- {day.commits.map((commit: FormattedCommit) => ( -
-
- -
- ))} -
-
- ))} -
diff --git a/dapp/src/components/CommitHistory.jsx b/dapp/src/components/CommitHistory.jsx new file mode 100644 index 0000000..b9eabdd --- /dev/null +++ b/dapp/src/components/CommitHistory.jsx @@ -0,0 +1,50 @@ +import React from 'react'; +import { getCommitHistory } from '../service/GithubService'; +import CommitRecord from './CommitRecord.jsx'; +import { formatDate } from '../service/utils'; +import { loadProjectRepoInfo } from '../service/StateService'; + +const CommitHistory = () => { + const [commitHistory, setCommitHistory] = React.useState([]); + + React.useEffect(() => { + const fetchCommitHistory = async () => { + const projectRepoInfo = loadProjectRepoInfo(); + if (projectRepoInfo?.author && projectRepoInfo?.repository) { + const history = await getCommitHistory(projectRepoInfo.author, projectRepoInfo.repository); + console.log("history:", history); + setCommitHistory(history); + } + }; + fetchCommitHistory(); + }, []); + + return ( +
+ {commitHistory.map((day) => ( +
+

+
+ {formatDate(day.date)} +

+
+ {day.commits.map((commit) => ( +
+ +
+ ))} +
+
+ ))} +
+ ); +}; + +export default CommitHistory; diff --git a/dapp/src/components/CommitRecord.astro b/dapp/src/components/CommitRecord.astro deleted file mode 100644 index 579b6af..0000000 --- a/dapp/src/components/CommitRecord.astro +++ /dev/null @@ -1,121 +0,0 @@ ---- -interface Props { - message: string; - date: string; - authorName: string; - authorGithubLink: string; - sha: string; - commitLink: string; -} - -const { message, date, authorName, authorGithubLink, sha, commitLink } = Astro.props; - -import { formatTime } from '../service/utils'; - -const formattedMessage = message.split(/\r?\n/).map((line: string) => line.trim()).filter(Boolean); -const firstLine = formattedMessage[0]; -const hasMoreLines = formattedMessage.length > 1; ---- - -
-
-
- {firstLine} - {hasMoreLines && ( - - )} -
- {hasMoreLines && ( - - )} -
- {authorName} - committed on - {formatTime(date)} -
-
-
- {sha.substring(0, 7)} - -
-
- - - diff --git a/dapp/src/components/CommitRecord.jsx b/dapp/src/components/CommitRecord.jsx new file mode 100644 index 0000000..cd37fc3 --- /dev/null +++ b/dapp/src/components/CommitRecord.jsx @@ -0,0 +1,74 @@ +import React, { useState, useEffect } from 'react'; +import { formatTime } from '../service/utils'; +import { loadProjectLatestSha } from '../service/StateService'; + +const CommitRecord = ({ message, date, authorName, authorGithubLink, sha, commitLink }) => { + const [isCopied, setIsCopied] = useState(false); + const [isLatestCommit, setIsLatestCommit] = useState(false); + const formattedMessage = message.split(/\r?\n/).map(line => line.trim()).filter(Boolean); + const firstLine = formattedMessage[0]; + const hasMoreLines = formattedMessage.length > 1; + const [isExpanded, setIsExpanded] = useState(false); + + useEffect(() => { + const highlightLatestCommit = () => { + const latestSha = 'cb2e487eb72e836d5ef9f00b52997416a56173dd'; + setIsLatestCommit(sha === latestSha); + }; + highlightLatestCommit(); + }, [sha]); + + const handleCopy = async () => { + try { + await navigator.clipboard.writeText(sha); + setIsCopied(true); + setTimeout(() => setIsCopied(false), 2000); + } catch (err) { + console.error('Failed to copy: ', err); + } + }; + + return ( +
+ {isLatestCommit && ( +
+ latest commit +
+ )} +
+
+ {firstLine} + {hasMoreLines && ( + + )} +
+ {hasMoreLines && isExpanded && ( +
{formattedMessage.slice(1).join('\n')}
+ )} +
+ {authorName} + committed on + {formatTime(date)} +
+
+
+ {sha.substring(0, 7)} + +
+
+ ); +}; + +export default CommitRecord; \ No newline at end of file diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index 20bb5dd..97781ad 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -2,7 +2,7 @@ import Topic from "./utils/Topic.astro"; import Modal from "./utils/Modal.astro"; import Loading from "./utils/Loading.astro"; -import CommitHistory from "./CommitHistory.astro"; +import CommitHistory from "./CommitHistory.jsx"; ---
@@ -50,7 +50,7 @@ import CommitHistory from "./CommitHistory.astro";
- +
@@ -111,8 +111,8 @@ import CommitHistory from "./CommitHistory.astro"; From 62ba7f02aea8617f71706658b132755e1928a008 Mon Sep 17 00:00:00 2001 From: Tupui <23188539+tupui@users.noreply.github.com> Date: Tue, 10 Sep 2024 01:16:57 +0300 Subject: [PATCH 040/100] Fix button handlers and re-registration, missing loadedProjectInfo and highlight hash --- dapp/src/components/SetProject.astro | 35 ++++++++++++++-------------- dapp/src/service/ProjectService.ts | 8 +++---- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/dapp/src/components/SetProject.astro b/dapp/src/components/SetProject.astro index dd561a4..fb4c77b 100644 --- a/dapp/src/components/SetProject.astro +++ b/dapp/src/components/SetProject.astro @@ -56,24 +56,25 @@ const TANSU_CONTRACT_ID = import.meta.env.PUBLIC_TANSU_CONTRACT_ID; "[data-set-project]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - button.disabled = true; - try { - setProjectId(project_name.value); - const project = await getProject(); - if (project && project.name && project.config && project.maintainers) { - setProject(project); - const { username, repoName } = getAuthorRepo(project.config.url); - if (username && repoName) { - setProjectRepoInfo(username, repoName); + if (button) { + button.addEventListener("click", async () => { + try { + setProjectId(project_name.value); + const project = await getProject(); + if (project && project.name && project.config && project.maintainers) { + setProject(project); + const { username, repoName } = getAuthorRepo(project.config.url); + if (username && repoName) { + setProjectRepoInfo(username, repoName); + } + navigate("/commit"); + } else { + navigate("/register") } - navigate("/commit"); - } else { - navigate("/register") + } catch (e) { + console.error(e); } - } catch (e) { - console.error(e); - } - }); + }); + } }); diff --git a/dapp/src/service/ProjectService.ts b/dapp/src/service/ProjectService.ts index 37557c7..ecc8ba9 100644 --- a/dapp/src/service/ProjectService.ts +++ b/dapp/src/service/ProjectService.ts @@ -2,7 +2,7 @@ import { kit, loadedPublicKey } from "../components/stellar-wallets-kit"; import Versioning from "../contracts/soroban_versioning"; import type { Project } from "soroban_versioning"; -import { loadedProjectId } from "./StateService"; +import {loadedProjectId, loadedProjectInfo} from "./StateService"; async function getProjectHash(): Promise { const projectId = loadedProjectId(); @@ -59,8 +59,9 @@ async function registerProject( domain_contract_id: string, ): Promise { const projectId = loadedProjectId(); + const projectInfo = loadedProjectInfo(); - if (!projectId) { + if (!projectId || !projectInfo) { alert("No project defined"); return false; } @@ -76,8 +77,7 @@ async function registerProject( const maintainers_ = maintainers.split(","); const tx = await Versioning.register({ - // @ts-ignore - name: projectState.project_name, + name: projectInfo.name, maintainer: publicKey, maintainers: maintainers_, url: config_url, From 43ba04e5aea788754321cfaf6a16dfc000bc02c9 Mon Sep 17 00:00:00 2001 From: Tupui <23188539+tupui@users.noreply.github.com> Date: Tue, 10 Sep 2024 01:16:57 +0300 Subject: [PATCH 041/100] Fix button handlers, re-registration, missing loadedProjectInfo and highlight hash --- dapp/src/components/SetProject.astro | 35 ++++++++++++++-------------- dapp/src/service/ProjectService.ts | 8 +++---- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/dapp/src/components/SetProject.astro b/dapp/src/components/SetProject.astro index dd561a4..fb4c77b 100644 --- a/dapp/src/components/SetProject.astro +++ b/dapp/src/components/SetProject.astro @@ -56,24 +56,25 @@ const TANSU_CONTRACT_ID = import.meta.env.PUBLIC_TANSU_CONTRACT_ID; "[data-set-project]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - button.disabled = true; - try { - setProjectId(project_name.value); - const project = await getProject(); - if (project && project.name && project.config && project.maintainers) { - setProject(project); - const { username, repoName } = getAuthorRepo(project.config.url); - if (username && repoName) { - setProjectRepoInfo(username, repoName); + if (button) { + button.addEventListener("click", async () => { + try { + setProjectId(project_name.value); + const project = await getProject(); + if (project && project.name && project.config && project.maintainers) { + setProject(project); + const { username, repoName } = getAuthorRepo(project.config.url); + if (username && repoName) { + setProjectRepoInfo(username, repoName); + } + navigate("/commit"); + } else { + navigate("/register") } - navigate("/commit"); - } else { - navigate("/register") + } catch (e) { + console.error(e); } - } catch (e) { - console.error(e); - } - }); + }); + } }); diff --git a/dapp/src/service/ProjectService.ts b/dapp/src/service/ProjectService.ts index 37557c7..ecc8ba9 100644 --- a/dapp/src/service/ProjectService.ts +++ b/dapp/src/service/ProjectService.ts @@ -2,7 +2,7 @@ import { kit, loadedPublicKey } from "../components/stellar-wallets-kit"; import Versioning from "../contracts/soroban_versioning"; import type { Project } from "soroban_versioning"; -import { loadedProjectId } from "./StateService"; +import {loadedProjectId, loadedProjectInfo} from "./StateService"; async function getProjectHash(): Promise { const projectId = loadedProjectId(); @@ -59,8 +59,9 @@ async function registerProject( domain_contract_id: string, ): Promise { const projectId = loadedProjectId(); + const projectInfo = loadedProjectInfo(); - if (!projectId) { + if (!projectId || !projectInfo) { alert("No project defined"); return false; } @@ -76,8 +77,7 @@ async function registerProject( const maintainers_ = maintainers.split(","); const tx = await Versioning.register({ - // @ts-ignore - name: projectState.project_name, + name: projectInfo.name, maintainer: publicKey, maintainers: maintainers_, url: config_url, From 323be3b2d00c0b2c621a5f2f1e1474fc30b94fb9 Mon Sep 17 00:00:00 2001 From: Tupui <23188539+tupui@users.noreply.github.com> Date: Tue, 10 Sep 2024 02:18:11 +0200 Subject: [PATCH 042/100] Fix buttons --- dapp/bun.lockb | Bin 625696 -> 639408 bytes dapp/src/components/Commit.astro | 32 ++++++------ dapp/src/components/CommitRecord.jsx | 3 +- dapp/src/components/ConnectWallet.astro | 58 +++++++++------------- dapp/src/components/GetCommit.astro | 26 +++++----- dapp/src/components/ProjectInfo.astro | 4 +- dapp/src/components/RegisterProject.astro | 40 ++++++++------- 7 files changed, 78 insertions(+), 85 deletions(-) diff --git a/dapp/bun.lockb b/dapp/bun.lockb index ca0a4842debdbcd1b7a1d8033aebb95967fdaae8..8688b9c42f6c41b41d7809120bf49e682536f693 100755 GIT binary patch delta 119327 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

+QGOuy~LY|(cXMqp>F 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 AHUIzs diff --git a/dapp/src/components/Commit.astro b/dapp/src/components/Commit.astro index 9300928..87aad5c 100644 --- a/dapp/src/components/Commit.astro +++ b/dapp/src/components/Commit.astro @@ -61,22 +61,24 @@ import Loading from "./utils/Loading.astro"; "[data-commit-hash]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - wrap_loader.style.display = "block"; - wrap_button.style.display = "none"; - try { - const commit_status = await commitHash(commit_hash.value); + if (button) { + button.addEventListener("click", async () => { + wrap_loader.style.display = "block"; + wrap_button.style.display = "none"; + try { + const commit_status = await commitHash(commit_hash.value); - wrap_loader.style.display = "none"; - wrap_button.style.display = "block"; - if (!commit_status) { - alert("Hash could not be committed! Please retry."); - } else { - wrap_button.innerHTML = "Hash committed!"; + wrap_loader.style.display = "none"; + wrap_button.style.display = "block"; + if (!commit_status) { + alert("Hash could not be committed! Please retry."); + } else { + wrap_button.innerHTML = "Hash committed!"; + } + } catch (e) { + console.error(e); } - } catch (e) { - console.error(e); - } - }); + }); + } }); diff --git a/dapp/src/components/CommitRecord.jsx b/dapp/src/components/CommitRecord.jsx index cd37fc3..644585f 100644 --- a/dapp/src/components/CommitRecord.jsx +++ b/dapp/src/components/CommitRecord.jsx @@ -12,8 +12,7 @@ const CommitRecord = ({ message, date, authorName, authorGithubLink, sha, commit useEffect(() => { const highlightLatestCommit = () => { - const latestSha = 'cb2e487eb72e836d5ef9f00b52997416a56173dd'; - setIsLatestCommit(sha === latestSha); + setIsLatestCommit(sha === loadProjectLatestSha); }; highlightLatestCommit(); }, [sha]); diff --git a/dapp/src/components/ConnectWallet.astro b/dapp/src/components/ConnectWallet.astro index 29bddb4..581f5d8 100644 --- a/dapp/src/components/ConnectWallet.astro +++ b/dapp/src/components/ConnectWallet.astro @@ -1,19 +1,13 @@

-
- -
+
@@ -22,16 +16,12 @@ import { kit, loadedPublicKey, setPublicKey } from "./stellar-wallets-kit"; document.addEventListener("astro:page-load", () => { - const ellipsis = document.querySelector( - "#connect-wrap .ellipsis", - ) as HTMLDivElement; const button = document.querySelector( "[data-connect]", ) as HTMLButtonElement; async function setLoggedIn(publicKey: string) { - ellipsis.innerHTML = `Signed in as ${publicKey}`; - ellipsis.title = publicKey; + button.textContent = `Signed in as ${publicKey}`; } const connectedPublicKey = loadedPublicKey(); @@ -39,28 +29,26 @@ setLoggedIn(connectedPublicKey); } - button.addEventListener("click", async () => { - button.disabled = true; - - try { - await kit.openModal({ - onWalletSelected: async (option: { id: string }) => { - try { - kit.setWallet(option.id); - const { address } = await kit.getAddress(); - setPublicKey(address); - await setLoggedIn(address); - button.disabled = false; - - window.dispatchEvent(new CustomEvent('walletConnected', { detail: address })); - } catch (e) { - console.error(e); - } - }, - }); - } catch (e) { - console.error(e); - } - }); + if (button) { + button.addEventListener("click", async () => { + try { + await kit.openModal({ + onWalletSelected: async (option: { id: string }) => { + try { + kit.setWallet(option.id); + const { address } = await kit.getAddress(); + setPublicKey(address); + await setLoggedIn(address); + window.dispatchEvent(new CustomEvent('walletConnected', { detail: address })); + } catch (e) { + console.error(e); + } + }, + }); + } catch (e) { + console.error(e); + } + }); + } }); diff --git a/dapp/src/components/GetCommit.astro b/dapp/src/components/GetCommit.astro index 26efe5f..2d9503d 100644 --- a/dapp/src/components/GetCommit.astro +++ b/dapp/src/components/GetCommit.astro @@ -42,18 +42,20 @@ import Loading from "./utils/Loading.astro"; "[data-project-get-hash]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - wrap_loader.style.display = "block"; - wrap_button.style.display = "none"; - try { - const project_hash = await getProjectHash(); + if (button) { + button.addEventListener("click", async () => { + wrap_loader.style.display = "block"; + wrap_button.style.display = "none"; + try { + const project_hash = await getProjectHash(); - wrap_loader.style.display = "none"; - wrap_button.style.display = "block"; - wrap_button.innerHTML = `${project_hash}`; - } catch (e) { - console.error(e); - } - }); + wrap_loader.style.display = "none"; + wrap_button.style.display = "block"; + wrap_button.innerHTML = `${project_hash}`; + } catch (e) { + console.error(e); + } + }); + } }); diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index 97781ad..ed2fdaa 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -71,12 +71,12 @@ import CommitHistory from "./CommitHistory.jsx"; diff --git a/dapp/src/components/RegisterProject.astro b/dapp/src/components/RegisterProject.astro index 52ad61f..9d97d05 100644 --- a/dapp/src/components/RegisterProject.astro +++ b/dapp/src/components/RegisterProject.astro @@ -25,13 +25,13 @@ import Loading from "./utils/Loading.astro"; @@ -95,24 +95,26 @@ import Loading from "./utils/Loading.astro"; "[data-register-project]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - wrap_loader.style.display = "block"; - wrap_button.style.display = "none"; + if (button) { + button.addEventListener("click", async () => { + wrap_loader.style.display = "block"; + wrap_button.style.display = "none"; - const register_status = await registerProject( - maintainers.value, - config_url.value, - config_hash.value, - SOROBAN_DOMAIN_CONTRACT_ID, - ); + const register_status = await registerProject( + maintainers.value, + config_url.value, + config_hash.value, + SOROBAN_DOMAIN_CONTRACT_ID, + ); - wrap_loader.style.display = "none"; - wrap_button.style.display = "block"; - if (!register_status) { - alert("Project could not be registered! Please retry."); - } else { - navigate("/commit"); - } - }); + wrap_loader.style.display = "none"; + wrap_button.style.display = "block"; + if (!register_status) { + alert("Project could not be registered! Please retry."); + } else { + navigate("/commit"); + } + }); + } }); From 37f4293ad9c30849e0df6fceca1090048908622d Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 09:25:19 +0900 Subject: [PATCH 043/100] fix:change registerProject function --- dapp/src/service/ProjectService.ts | 9 +++++---- dapp/src/service/StateService.ts | 5 +++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/dapp/src/service/ProjectService.ts b/dapp/src/service/ProjectService.ts index ecc8ba9..70f326d 100644 --- a/dapp/src/service/ProjectService.ts +++ b/dapp/src/service/ProjectService.ts @@ -2,7 +2,7 @@ import { kit, loadedPublicKey } from "../components/stellar-wallets-kit"; import Versioning from "../contracts/soroban_versioning"; import type { Project } from "soroban_versioning"; -import {loadedProjectId, loadedProjectInfo} from "./StateService"; +import {loadedProjectId, loadProjectName} from "./StateService"; async function getProjectHash(): Promise { const projectId = loadedProjectId(); @@ -59,9 +59,9 @@ async function registerProject( domain_contract_id: string, ): Promise { const projectId = loadedProjectId(); - const projectInfo = loadedProjectInfo(); + const projectName = loadProjectName(); - if (!projectId || !projectInfo) { + if (!projectId || !projectName) { alert("No project defined"); return false; } @@ -77,7 +77,8 @@ async function registerProject( const maintainers_ = maintainers.split(","); const tx = await Versioning.register({ - name: projectInfo.name, + // @ts-ignore + name: projectName, maintainer: publicKey, maintainers: maintainers_, url: config_url, diff --git a/dapp/src/service/StateService.ts b/dapp/src/service/StateService.ts index 4ffbe35..a5d0137 100644 --- a/dapp/src/service/StateService.ts +++ b/dapp/src/service/StateService.ts @@ -118,6 +118,10 @@ function loadedProjectId(): Buffer | undefined { return projectState.project_id; } +function loadProjectName(): string | undefined { + return projectState.project_name; +} + function loadedProjectInfo(): Project | undefined { if (!projectInfo.project_maintainers || !projectInfo.project_config_url || !projectInfo.project_config_hash || !projectState.project_name) { return undefined; @@ -156,4 +160,5 @@ export { loadProjectRepoInfo, setProjectLatestSha, loadProjectLatestSha, + loadProjectName, // Add this new export }; \ No newline at end of file From ff704dd1a9d80bac19973a891daa6cacb5116151 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 09:42:21 +0900 Subject: [PATCH 044/100] Merge from origin/dapp-dev --- dapp/bun.lockb | Bin 625696 -> 639408 bytes dapp/src/components/Commit.astro | 26 +++------- dapp/src/components/CommitRecord.jsx | 3 +- dapp/src/components/ConnectWallet.astro | 58 +++++++++------------- dapp/src/components/GetCommit.astro | 26 +++++----- dapp/src/components/ProjectInfo.astro | 4 +- dapp/src/components/RegisterProject.astro | 40 ++++++++------- 7 files changed, 68 insertions(+), 89 deletions(-) diff --git a/dapp/bun.lockb b/dapp/bun.lockb index ca0a4842debdbcd1b7a1d8033aebb95967fdaae8..8688b9c42f6c41b41d7809120bf49e682536f693 100755 GIT binary patch delta 119327 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

+QGOuy~LY|(cXMqp>F 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 AHUIzs diff --git a/dapp/src/components/Commit.astro b/dapp/src/components/Commit.astro index f0028a0..0d12cbc 100644 --- a/dapp/src/components/Commit.astro +++ b/dapp/src/components/Commit.astro @@ -76,11 +76,12 @@ import Loading from "./utils/Loading.astro"; "[data-commit-hash]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - wrap_loader.style.display = "block"; - wrap_button.style.display = "none"; - try { - const commit_status = await commitHash(commit_hash.value); + if (button) { + button.addEventListener("click", async () => { + wrap_loader.style.display = "block"; + wrap_button.style.display = "none"; + try { + const commit_status = await commitHash(commit_hash.value); wrap_loader.style.display = "none"; wrap_button.style.display = "block"; @@ -93,18 +94,5 @@ import Loading from "./utils/Loading.astro"; console.error(e); } }); - - window.addEventListener('walletConnected', (_event: Event) => { - const projectInfo = loadedProjectInfo(); - - if (projectInfo) { - const connectedPublicKey = loadedPublicKey(); - const isMaintainer = connectedPublicKey ? projectInfo.maintainers.includes(connectedPublicKey) : false; - const updateCommitSection = document.getElementById("update-commit-section"); - if (updateCommitSection) { - updateCommitSection.classList.toggle("hidden", !isMaintainer); - } - } - }); - }); + }}); diff --git a/dapp/src/components/CommitRecord.jsx b/dapp/src/components/CommitRecord.jsx index cd37fc3..644585f 100644 --- a/dapp/src/components/CommitRecord.jsx +++ b/dapp/src/components/CommitRecord.jsx @@ -12,8 +12,7 @@ const CommitRecord = ({ message, date, authorName, authorGithubLink, sha, commit useEffect(() => { const highlightLatestCommit = () => { - const latestSha = 'cb2e487eb72e836d5ef9f00b52997416a56173dd'; - setIsLatestCommit(sha === latestSha); + setIsLatestCommit(sha === loadProjectLatestSha); }; highlightLatestCommit(); }, [sha]); diff --git a/dapp/src/components/ConnectWallet.astro b/dapp/src/components/ConnectWallet.astro index 29bddb4..581f5d8 100644 --- a/dapp/src/components/ConnectWallet.astro +++ b/dapp/src/components/ConnectWallet.astro @@ -1,19 +1,13 @@

-
- -
+
@@ -22,16 +16,12 @@ import { kit, loadedPublicKey, setPublicKey } from "./stellar-wallets-kit"; document.addEventListener("astro:page-load", () => { - const ellipsis = document.querySelector( - "#connect-wrap .ellipsis", - ) as HTMLDivElement; const button = document.querySelector( "[data-connect]", ) as HTMLButtonElement; async function setLoggedIn(publicKey: string) { - ellipsis.innerHTML = `Signed in as ${publicKey}`; - ellipsis.title = publicKey; + button.textContent = `Signed in as ${publicKey}`; } const connectedPublicKey = loadedPublicKey(); @@ -39,28 +29,26 @@ setLoggedIn(connectedPublicKey); } - button.addEventListener("click", async () => { - button.disabled = true; - - try { - await kit.openModal({ - onWalletSelected: async (option: { id: string }) => { - try { - kit.setWallet(option.id); - const { address } = await kit.getAddress(); - setPublicKey(address); - await setLoggedIn(address); - button.disabled = false; - - window.dispatchEvent(new CustomEvent('walletConnected', { detail: address })); - } catch (e) { - console.error(e); - } - }, - }); - } catch (e) { - console.error(e); - } - }); + if (button) { + button.addEventListener("click", async () => { + try { + await kit.openModal({ + onWalletSelected: async (option: { id: string }) => { + try { + kit.setWallet(option.id); + const { address } = await kit.getAddress(); + setPublicKey(address); + await setLoggedIn(address); + window.dispatchEvent(new CustomEvent('walletConnected', { detail: address })); + } catch (e) { + console.error(e); + } + }, + }); + } catch (e) { + console.error(e); + } + }); + } }); diff --git a/dapp/src/components/GetCommit.astro b/dapp/src/components/GetCommit.astro index 26efe5f..2d9503d 100644 --- a/dapp/src/components/GetCommit.astro +++ b/dapp/src/components/GetCommit.astro @@ -42,18 +42,20 @@ import Loading from "./utils/Loading.astro"; "[data-project-get-hash]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - wrap_loader.style.display = "block"; - wrap_button.style.display = "none"; - try { - const project_hash = await getProjectHash(); + if (button) { + button.addEventListener("click", async () => { + wrap_loader.style.display = "block"; + wrap_button.style.display = "none"; + try { + const project_hash = await getProjectHash(); - wrap_loader.style.display = "none"; - wrap_button.style.display = "block"; - wrap_button.innerHTML = `${project_hash}`; - } catch (e) { - console.error(e); - } - }); + wrap_loader.style.display = "none"; + wrap_button.style.display = "block"; + wrap_button.innerHTML = `${project_hash}`; + } catch (e) { + console.error(e); + } + }); + } }); diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index 97781ad..ed2fdaa 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -71,12 +71,12 @@ import CommitHistory from "./CommitHistory.jsx"; diff --git a/dapp/src/components/RegisterProject.astro b/dapp/src/components/RegisterProject.astro index 52ad61f..9d97d05 100644 --- a/dapp/src/components/RegisterProject.astro +++ b/dapp/src/components/RegisterProject.astro @@ -25,13 +25,13 @@ import Loading from "./utils/Loading.astro"; @@ -95,24 +95,26 @@ import Loading from "./utils/Loading.astro"; "[data-register-project]", ) as HTMLButtonElement; - button.addEventListener("click", async () => { - wrap_loader.style.display = "block"; - wrap_button.style.display = "none"; + if (button) { + button.addEventListener("click", async () => { + wrap_loader.style.display = "block"; + wrap_button.style.display = "none"; - const register_status = await registerProject( - maintainers.value, - config_url.value, - config_hash.value, - SOROBAN_DOMAIN_CONTRACT_ID, - ); + const register_status = await registerProject( + maintainers.value, + config_url.value, + config_hash.value, + SOROBAN_DOMAIN_CONTRACT_ID, + ); - wrap_loader.style.display = "none"; - wrap_button.style.display = "block"; - if (!register_status) { - alert("Project could not be registered! Please retry."); - } else { - navigate("/commit"); - } - }); + wrap_loader.style.display = "none"; + wrap_button.style.display = "block"; + if (!register_status) { + alert("Project could not be registered! Please retry."); + } else { + navigate("/commit"); + } + }); + } }); From deb7f0ea46ef5f6ed6d56ad256b1572963c23363 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 09:49:03 +0900 Subject: [PATCH 045/100] chore: change loadedProjectInfo name to loadProjectInfo --- dapp/src/components/Commit.astro | 4 ++-- dapp/src/components/ProjectInfo.astro | 8 ++++---- dapp/src/service/StateService.ts | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/dapp/src/components/Commit.astro b/dapp/src/components/Commit.astro index 0d12cbc..338d0fa 100644 --- a/dapp/src/components/Commit.astro +++ b/dapp/src/components/Commit.astro @@ -47,11 +47,11 @@ import Loading from "./utils/Loading.astro"; diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index b14db18..5ff3ea7 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -178,8 +178,13 @@ import PrimaryButton from "./utils/PrimaryButton.astro"; if (modalConfigHash) { modalConfigHash.value = projectInfo.config.hash; } + } + } + + function updateUpgradeConfigButtonVisibility() { + const projectInfo = loadProjectInfo(); - // Check if the connected wallet is a maintainer + if (projectInfo) { const connectedPublicKey = loadedPublicKey(); const isMaintainer = connectedPublicKey ? projectInfo.maintainers.includes(connectedPublicKey) : false; const updateConfigButton = document.getElementById("open-update-config-modal-button"); @@ -202,6 +207,7 @@ import PrimaryButton from "./utils/PrimaryButton.astro"; } updateProjectInfo(); + updateUpgradeConfigButtonVisibility(); updateProjectLatestSha(); // Call this function to update the latest SHA const button = document.querySelector( @@ -285,16 +291,7 @@ import PrimaryButton from "./utils/PrimaryButton.astro"; } window.addEventListener('walletConnected', (_event: Event) => { - const projectInfo = loadProjectInfo(); - - if (projectInfo) { - const connectedPublicKey = loadedPublicKey(); - const isMaintainer = connectedPublicKey ? projectInfo.maintainers.includes(connectedPublicKey) : false; - const updateConfigButton = document.getElementById("open-update-config-modal-button"); - if (updateConfigButton) { - updateConfigButton.classList.toggle("hidden", !isMaintainer); - } - } + updateUpgradeConfigButtonVisibility(); }); }); From a59e673fd48e45b7d94ecc136a4acb42dc6a35f3 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 14:29:46 +0900 Subject: [PATCH 059/100] chore: format code style in projectinfo --- dapp/src/components/ProjectInfo.astro | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dapp/src/components/ProjectInfo.astro b/dapp/src/components/ProjectInfo.astro index 5ff3ea7..ece6f05 100644 --- a/dapp/src/components/ProjectInfo.astro +++ b/dapp/src/components/ProjectInfo.astro @@ -195,16 +195,16 @@ import PrimaryButton from "./utils/PrimaryButton.astro"; } - async function updateProjectLatestSha() { - try { - const latestSha = await getProjectHash(); - if (latestSha) { - setProjectLatestSha(latestSha); + async function updateProjectLatestSha() { + try { + const latestSha = await getProjectHash(); + if (latestSha) { + setProjectLatestSha(latestSha); + } + } catch (error) { + console.error("Error updating project latest SHA:", error); } - } catch (error) { - console.error("Error updating project latest SHA:", error); } - } updateProjectInfo(); updateUpgradeConfigButtonVisibility(); From ea49f4107cf0bd9439a25b9a0d277356442d5003 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 15:09:31 +0900 Subject: [PATCH 060/100] fix: scroll bar style --- dapp/src/styles/global.css | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/dapp/src/styles/global.css b/dapp/src/styles/global.css index c2118e7..30dcac3 100644 --- a/dapp/src/styles/global.css +++ b/dapp/src/styles/global.css @@ -14,9 +14,8 @@ } /* custom scrollbar */ -/* For Webkit-based browsers (Chrome, Safari) */ ::-webkit-scrollbar { - width: 8px !important; + width: 10px !important; } ::-webkit-scrollbar-track { @@ -33,9 +32,4 @@ ::-webkit-scrollbar-thumb:hover { background-color: #555 !important; -} -/* For Firefox */ -html { - scrollbar-width: thin; - scrollbar-color: #555 #f1f1f1 !important; -} +} \ No newline at end of file From 0f0ee2825d7aff6577eb34eef658566c248eae97 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 16:20:23 +0900 Subject: [PATCH 061/100] chore: create modal Input box --- dapp/src/components/utils/ModalInput.astro | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 dapp/src/components/utils/ModalInput.astro diff --git a/dapp/src/components/utils/ModalInput.astro b/dapp/src/components/utils/ModalInput.astro new file mode 100644 index 0000000..1b6c05b --- /dev/null +++ b/dapp/src/components/utils/ModalInput.astro @@ -0,0 +1,25 @@ +--- +interface Props { + type?: string; + id: string; + placeholder?: string; + required?: boolean; + inputClass?: string; +} + +const { + type = 'text', + id, + placeholder, + required = false, + inputClass = "", +} = Astro.props; +--- + + \ No newline at end of file From 80b09a37f00c0539f16a375f4990b5f454297ca3 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 20:48:42 +0900 Subject: [PATCH 062/100] chore: update components style --- dapp/src/components/utils/ModalInput.astro | 13 ++++++++++++- dapp/src/components/utils/PrimaryButton.astro | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/dapp/src/components/utils/ModalInput.astro b/dapp/src/components/utils/ModalInput.astro index 1b6c05b..f95a0fd 100644 --- a/dapp/src/components/utils/ModalInput.astro +++ b/dapp/src/components/utils/ModalInput.astro @@ -2,24 +2,35 @@ interface Props { type?: string; id: string; + name?: string; placeholder?: string; required?: boolean; inputClass?: string; + minlength?: string; + maxlength?: string; } const { type = 'text', id, + name, placeholder, required = false, inputClass = "", + minlength, + maxlength, + ...rest } = Astro.props; --- \ No newline at end of file diff --git a/dapp/src/components/utils/PrimaryButton.astro b/dapp/src/components/utils/PrimaryButton.astro index 44c3ba5..25826da 100644 --- a/dapp/src/components/utils/PrimaryButton.astro +++ b/dapp/src/components/utils/PrimaryButton.astro @@ -21,7 +21,7 @@ const {
- {sha.substring(0, 7)} +
+ + {sha.substring(0, 7)} + +
+
+ {sha} +
+
+
+
-
+
{ + navigator.clipboard.writeText(project_hash).then(() => { + copyIcon.innerHTML = ''; + setTimeout(() => { + copyIcon.innerHTML = ''; + }, 2000); + }); + }); + + const container = document.createElement('div'); + container.className = 'flex items-center justify-around w-full max-w-[450px] rounded-md border border-zinc-400'; + container.appendChild(hashDisplay); + container.appendChild(copyIcon); + + wrap_button.innerHTML = ''; + wrap_button.appendChild(container); + } else { + wrap_button.innerHTML = ''; + } } catch (e) { console.error(e); } From 6f37499e93acbd6841e88b9f75c05b9c5c511992 Mon Sep 17 00:00:00 2001 From: 0xExp-po Date: Tue, 10 Sep 2024 20:53:48 +0900 Subject: [PATCH 066/100] chore: update commit section style --- dapp/src/components/Commit.astro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dapp/src/components/Commit.astro b/dapp/src/components/Commit.astro index 9e6600a..b123eab 100644 --- a/dapp/src/components/Commit.astro +++ b/dapp/src/components/Commit.astro @@ -10,9 +10,9 @@ import PrimaryButton from "./utils/PrimaryButton.astro";
-
+