+138
-1
api/tangled/cbor_gen.go
+138
-1
api/tangled/cbor_gen.go
··················
+4
api/tangled/tangledrepo.go
+4
api/tangled/tangledrepo.go
···
+8
appview/db/db.go
+8
appview/db/db.go
···
+9
-3
appview/db/notifications.go
+9
-3
appview/db/notifications.go
···+r.id as r_id, r.did as r_did, r.name as r_name, r.description as r_description, r.website as r_website, r.topics as r_topics,i.id as i_id, i.did as i_did, i.issue_id as i_issue_id, i.title as i_title, i.open as i_open,p.id as p_id, p.owner_did as p_owner_did, p.pull_id as p_pull_id, p.title as p_title, p.state as p_state·········
+50
-12
appview/db/repos.go
+50
-12
appview/db/repos.go
···············-row := e.QueryRow(`select id, did, name, knot, created, rkey, description from repos where at_uri = ?`, atUri)+row := e.QueryRow(`select id, did, name, knot, created, rkey, description, website, topics from repos where at_uri = ?`, atUri)-if err := row.Scan(&repo.Id, &repo.Did, &repo.Name, &repo.Knot, &createdAt, &repo.Rkey, &nullableDescription); err != nil {+if err := row.Scan(&repo.Id, &repo.Did, &repo.Name, &repo.Knot, &createdAt, &repo.Rkey, &nullableDescription, &nullableWebsite, &nullableTopicStr); err != nil {···-repo.Did, repo.Name, repo.Knot, repo.Rkey, repo.RepoAt().String(), repo.Description, repo.Source,+repo.Did, repo.Name, repo.Knot, repo.Rkey, repo.RepoAt().String(), repo.Description, repo.Website, repo.TopicStr(), repo.Source,···+`select distinct r.id, r.did, r.name, r.knot, r.rkey, r.description, r.website, r.created, r.source···-err := rows.Scan(&repo.Id, &repo.Did, &repo.Name, &repo.Knot, &repo.Rkey, &nullableDescription, &createdAt, &nullableSource)+err := rows.Scan(&repo.Id, &repo.Did, &repo.Name, &repo.Knot, &repo.Rkey, &nullableDescription, &nullableWebsite, &createdAt, &nullableSource)···-err := row.Scan(&repo.Id, &repo.Did, &repo.Name, &repo.Knot, &repo.Rkey, &nullableDescription, &createdAt, &nullableSource)+err := row.Scan(&repo.Id, &repo.Did, &repo.Name, &repo.Knot, &repo.Rkey, &nullableDescription, &nullableWebsite, &nullableTopicStr, &createdAt, &nullableSource)
+14
-1
appview/models/repo.go
+14
-1
appview/models/repo.go
···············
+5
appview/pages/funcmap.go
+5
appview/pages/funcmap.go
···
-12
appview/pages/pages.go
-12
appview/pages/pages.go
···-func (p *Pages) EditRepoDescriptionFragment(w io.Writer, params RepoDescriptionParams) error {
+2
appview/pages/repoinfo/repoinfo.go
+2
appview/pages/repoinfo/repoinfo.go
+11
-1
appview/pages/templates/layouts/repobase.html
+11
-1
appview/pages/templates/layouts/repobase.html
···+<span class="font-normal normal-case text-sm rounded py-1 px-2 bg-white dark:bg-gray-800">{{ $topic }}</span>···+<span id="repo-description" class="flex flex-wrap items-center gap-2 text-sm" hx-target="this" hx-swap="outerHTML">+<a href="{{ .RepoInfo.Website }}" class="underline text-blue-800 dark:text-blue-300">{{ .RepoInfo.Website | trimUriScheme }}</a>
-11
appview/pages/templates/repo/fragments/editRepoDescription.html
-11
appview/pages/templates/repo/fragments/editRepoDescription.html
···-<form hx-put="/{{ .RepoInfo.FullName }}/description" hx-target="this" hx-swap="outerHTML" class="flex flex-wrap gap-2">-<button type="button" class="btn p-1 flex items-center gap-2 no-underline text-sm" hx-get="/{{ .RepoInfo.FullName }}/description" >
-15
appview/pages/templates/repo/fragments/repoDescription.html
-15
appview/pages/templates/repo/fragments/repoDescription.html
···-<span id="repo-description" class="flex flex-wrap items-center gap-2 text-sm" hx-target="this" hx-swap="outerHTML">-<button class="flex items-center gap-2 no-underline text-sm" hx-get="/{{ .RepoInfo.FullName }}/description/edit">
+47
appview/pages/templates/repo/settings/general.html
+47
appview/pages/templates/repo/settings/general.html
······
+93
-99
appview/repo/repo.go
+93
-99
appview/repo/repo.go
···-// this is a bit of a pain because the golang atproto impl does not allow nil SwapRecord field-// SwapRecord is optional and should happen automagically, but given that it does not, we have to perform two requests-ex, err := comatproto.RepoGetRecord(r.Context(), client, "", tangled.RepoNSID, newRepo.Did, newRepo.Rkey)···+ex, err := comatproto.RepoGetRecord(r.Context(), client, "", tangled.RepoNSID, newRepo.Did, newRepo.Rkey)+rp.pages.Notice(w, noticeId, "Failed to save repository information, no record found on PDS.")+rp.pages.Notice(w, noticeId, "Failed to save repository information, unable to save to PDS.")
+1
-6
appview/repo/router.go
+1
-6
appview/repo/router.go
···
+2
appview/reporesolver/resolver.go
+2
appview/reporesolver/resolver.go
+53
appview/validator/repo_topics.go
+53
appview/validator/repo_topics.go
···+return nil, fmt.Errorf("topic '%s' contains invalid characters (allowed: lowercase letters, digits, hyphens)", t)
+17
appview/validator/uri.go
+17
appview/validator/uri.go
···
+15
lexicons/repo/repo.json
+15
lexicons/repo/repo.json
···