Compare commits
9 Commits
7692240daa
...
fe8b6cbd91
Author | SHA1 | Date | |
---|---|---|---|
|
fe8b6cbd91 | ||
|
46addc1f93 | ||
|
d0f48187f9 | ||
|
8e45fcb63a | ||
|
8120c0c20c | ||
|
6aca9287a2 | ||
|
96be0cb6e3 | ||
|
12ddc48c5c | ||
|
06c067bb0f |
@ -726,7 +726,7 @@ steps:
|
||||
|
||||
# TODO: We should probably build all dependencies into a test image
|
||||
- name: test-e2e
|
||||
image: mcr.microsoft.com/playwright:v1.29.2-focal
|
||||
image: mcr.microsoft.com/playwright:v1.31.2-focal
|
||||
commands:
|
||||
- curl -sLO https://go.dev/dl/go1.20.linux-amd64.tar.gz && tar -C /usr/local -xzf go1.20.linux-amd64.tar.gz
|
||||
- groupadd --gid 1001 gitea && useradd -m --gid 1001 --uid 1001 gitea
|
||||
|
@ -471,6 +471,8 @@ var migrations = []Migration{
|
||||
NewMigration("Rename Webhook org_id to owner_id", v1_20.RenameWebhookOrgToOwner),
|
||||
// v246 -> v247
|
||||
NewMigration("Add missed column owner_id for project table", v1_20.AddNewColumnForProject),
|
||||
// v247 -> v248
|
||||
NewMigration("Fix incorrect project type", v1_20.FixIncorrectProjectType),
|
||||
}
|
||||
|
||||
// GetCurrentDBVersion returns the current db version
|
||||
|
50
models/migrations/v1_20/v247.go
Normal file
@ -0,0 +1,50 @@
|
||||
// Copyright 2023 The Gitea Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package v1_20 //nolint
|
||||
|
||||
import (
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
|
||||
"xorm.io/xorm"
|
||||
)
|
||||
|
||||
// FixIncorrectProjectType: set individual project's type from 3(TypeOrganization) to 1(TypeIndividual)
|
||||
func FixIncorrectProjectType(x *xorm.Engine) error {
|
||||
type User struct {
|
||||
ID int64 `xorm:"pk autoincr"`
|
||||
Type int
|
||||
}
|
||||
|
||||
const (
|
||||
UserTypeIndividual int = 0
|
||||
|
||||
TypeIndividual uint8 = 1
|
||||
TypeOrganization uint8 = 3
|
||||
)
|
||||
|
||||
type Project struct {
|
||||
OwnerID int64 `xorm:"INDEX"`
|
||||
Type uint8
|
||||
Owner *User `xorm:"extends"`
|
||||
}
|
||||
|
||||
sess := x.NewSession()
|
||||
defer sess.Close()
|
||||
|
||||
if err := sess.Begin(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
count, err := sess.Table("project").
|
||||
Where("type = ? AND owner_id IN (SELECT id FROM `user` WHERE type = ?)", TypeOrganization, UserTypeIndividual).
|
||||
Update(&Project{
|
||||
Type: TypeIndividual,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
log.Debug("Updated %d projects to belong to a user instead of an organization", count)
|
||||
|
||||
return sess.Commit()
|
||||
}
|
@ -172,7 +172,7 @@ func GetCardConfig() []CardConfig {
|
||||
// IsTypeValid checks if a project type is valid
|
||||
func IsTypeValid(p Type) bool {
|
||||
switch p {
|
||||
case TypeRepository, TypeOrganization:
|
||||
case TypeIndividual, TypeRepository, TypeOrganization:
|
||||
return true
|
||||
default:
|
||||
return false
|
||||
|
@ -20,7 +20,7 @@ func TestIsProjectTypeValid(t *testing.T) {
|
||||
typ Type
|
||||
valid bool
|
||||
}{
|
||||
{TypeIndividual, false},
|
||||
{TypeIndividual, true},
|
||||
{TypeRepository, true},
|
||||
{TypeOrganization, true},
|
||||
{UnknownType, false},
|
||||
|
@ -223,6 +223,7 @@ func ParsePackage(r io.Reader) (*Package, error) {
|
||||
OptionalDependencies: meta.OptionalDependencies,
|
||||
Bin: meta.Bin,
|
||||
Readme: meta.Readme,
|
||||
Repository: meta.Repository,
|
||||
},
|
||||
}
|
||||
|
||||
|
@ -26,6 +26,10 @@ func TestParsePackage(t *testing.T) {
|
||||
packageDescription := "Test Description"
|
||||
data := "H4sIAAAAAAAA/ytITM5OTE/VL4DQelnF+XkMVAYGBgZmJiYK2MRBwNDcSIHB2NTMwNDQzMwAqA7IMDUxA9LUdgg2UFpcklgEdAql5kD8ogCnhwio5lJQUMpLzE1VslJQcihOzi9I1S9JLS7RhSYIJR2QgrLUouLM/DyQGkM9Az1D3YIiqExKanFyUWZBCVQ2BKhVwQVJDKwosbQkI78IJO/tZ+LsbRykxFXLNdA+HwWjYBSMgpENACgAbtAACAAA"
|
||||
integrity := "sha512-yA4FJsVhetynGfOC1jFf79BuS+jrHbm0fhh+aHzCQkOaOBXKf9oBnC4a6DnLLnEsHQDRLYd00cwj8sCXpC+wIg=="
|
||||
repository := Repository{
|
||||
Type: "gitea",
|
||||
URL: "http://localhost:3000/gitea/test.git",
|
||||
}
|
||||
|
||||
t.Run("InvalidUpload", func(t *testing.T) {
|
||||
p, err := ParsePackage(bytes.NewReader([]byte{0}))
|
||||
@ -242,6 +246,7 @@ func TestParsePackage(t *testing.T) {
|
||||
Dist: PackageDistribution{
|
||||
Integrity: integrity,
|
||||
},
|
||||
Repository: repository,
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -272,5 +277,7 @@ func TestParsePackage(t *testing.T) {
|
||||
assert.Equal(t, "https://gitea.io/", p.Metadata.ProjectURL)
|
||||
assert.Contains(t, p.Metadata.Dependencies, "package")
|
||||
assert.Equal(t, "1.2.0", p.Metadata.Dependencies["package"])
|
||||
assert.Equal(t, repository.Type, p.Metadata.Repository.Type)
|
||||
assert.Equal(t, repository.URL, p.Metadata.Repository.URL)
|
||||
})
|
||||
}
|
||||
|
@ -21,4 +21,5 @@ type Metadata struct {
|
||||
OptionalDependencies map[string]string `json:"optional_dependencies,omitempty"`
|
||||
Bin map[string]string `json:"bin,omitempty"`
|
||||
Readme string `json:"readme,omitempty"`
|
||||
Repository Repository `json:"repository,omitempty"`
|
||||
}
|
||||
|
@ -1423,7 +1423,6 @@ issues.context.reference_issue=Odkázat v novém úkolu
|
||||
issues.context.edit=Upravit
|
||||
issues.context.delete=Smazat
|
||||
issues.no_content=Není zde žádný obsah.
|
||||
issues.close_issue=Zavřít
|
||||
issues.pull_merged_at=`sloučil/a commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> do <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`sloučil/a commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> do <b>%[3]s</b> ručně %[4]s`
|
||||
issues.close_comment_issue=Okomentovat a zavřít
|
||||
|
@ -1310,7 +1310,6 @@ issues.context.reference_issue=In neuem Issue referenzieren
|
||||
issues.context.edit=Bearbeiten
|
||||
issues.context.delete=Löschen
|
||||
issues.no_content=Hier gibt es bis jetzt noch keinen Inhalt.
|
||||
issues.close_issue=Schließen
|
||||
issues.pull_merged_at=`mergte den Commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> %[4]s in <b>%[3]s</b>`
|
||||
issues.manually_pull_merged_at=`mergte den Commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> %[4]s manuell in <b>%[3]s</b>`
|
||||
issues.close_comment_issue=Kommentieren und schließen
|
||||
|
@ -1331,7 +1331,6 @@ issues.context.reference_issue=Αναφορά σε νέο ζήτημα
|
||||
issues.context.edit=Επεξεργασία
|
||||
issues.context.delete=Διαγραφή
|
||||
issues.no_content=Δεν υπάρχει ακόμα περιεχόμενο.
|
||||
issues.close_issue=Κλείσιμο
|
||||
issues.pull_merged_at=`συγχώνευσε την υποβολή <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> σε <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`συγχώνευσε την υποβολή <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> σε <b>%[3]s</b> %[4]s`
|
||||
issues.close_comment_issue=Σχόλιο και κλείσιμο
|
||||
|
@ -1330,7 +1330,6 @@ issues.context.reference_issue=Referencia en una nueva incidencia
|
||||
issues.context.edit=Editar
|
||||
issues.context.delete=Eliminar
|
||||
issues.no_content=Aún no existe contenido.
|
||||
issues.close_issue=Cerrar
|
||||
issues.pull_merged_at=`fusionado commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> en <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`fusionado manualmente commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> en <b>%[3]s</b> %[4]s`
|
||||
issues.close_comment_issue=Comentar y cerrar
|
||||
|
@ -1213,7 +1213,6 @@ issues.context.reference_issue=مرجع در شماره جدید
|
||||
issues.context.edit=ویرایش
|
||||
issues.context.delete=حذف
|
||||
issues.no_content=هنوز محتوایی ایجاد نشده.
|
||||
issues.close_issue=ببند
|
||||
issues.pull_merged_at=`ادغام شده commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> در <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`ادغام شده commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> در <b>%[3]s</b> بصورت دستی %[4]s`
|
||||
issues.close_comment_issue=ثبت دیدگاه و بستن
|
||||
|
@ -936,7 +936,6 @@ issues.context.reference_issue=Viittaa uudesa ongelmassa
|
||||
issues.context.edit=Muokkaa
|
||||
issues.context.delete=Poista
|
||||
issues.no_content=Sisältöä ei vielä ole.
|
||||
issues.close_issue=Sulje
|
||||
issues.close_comment_issue=Kommentoi ja sulje
|
||||
issues.reopen_issue=Avaa uudelleen
|
||||
issues.reopen_comment_issue=Kommentoi ja avaa uudelleen
|
||||
|
@ -1195,7 +1195,6 @@ issues.context.reference_issue=Référencer dans un nouveau ticket
|
||||
issues.context.edit=Éditer
|
||||
issues.context.delete=Supprimer
|
||||
issues.no_content=Il n'existe pas encore de contenu.
|
||||
issues.close_issue=Fermer
|
||||
issues.pull_merged_at=`révision fusionnée <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> dans <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`révision fusionnée <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> dans <b>%[3]s</b> manuellement %[4]s`
|
||||
issues.close_comment_issue=Commenter et Fermer
|
||||
|
@ -881,7 +881,6 @@ issues.context.quote_reply=Válasz idézettel
|
||||
issues.context.edit=Szerkesztés
|
||||
issues.context.delete=Törlés
|
||||
issues.no_content=Még nincs tartalom.
|
||||
issues.close_issue=Lezárás
|
||||
issues.close_comment_issue=Hozzászólás és lezárás
|
||||
issues.reopen_issue=Újranyitás
|
||||
issues.reopen_comment_issue=Hozzászólás és újranyitás
|
||||
|
@ -752,7 +752,6 @@ issues.context.quote_reply=Kutip Balasan
|
||||
issues.context.edit=Sunting
|
||||
issues.context.delete=Hapus
|
||||
issues.no_content=Belum ada konten.
|
||||
issues.close_issue=Tutup
|
||||
issues.close_comment_issue=Komentar dan Tutup
|
||||
issues.reopen_issue=Buka kembali
|
||||
issues.reopen_comment_issue=Komentar dan Buka Kembali
|
||||
|
@ -823,7 +823,6 @@ issues.num_comments=%d ummæli
|
||||
issues.commented_at=`gerði ummæli <a href="#%s">%s</a>`
|
||||
issues.context.edit=Breyta
|
||||
issues.context.delete=Eyða
|
||||
issues.close_issue=Loka
|
||||
issues.manually_pull_merged_at=`sameinaði framlag <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> inni í <b>%[3]s</b> handvirkt %[4]s`
|
||||
issues.close_comment_issue=Senda ummæli og Loka
|
||||
issues.reopen_issue=Enduropna
|
||||
|
@ -1315,7 +1315,6 @@ issues.context.reference_issue=Fai riferimento in un nuovo problema
|
||||
issues.context.edit=Modifica
|
||||
issues.context.delete=Elimina
|
||||
issues.no_content=Non ci sono ancora contenuti.
|
||||
issues.close_issue=Chiudi
|
||||
issues.pull_merged_at=`merged commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> in <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`merged commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> in <b>%[3]s</b> manualmente %[4]s`
|
||||
issues.close_comment_issue=Commenta e Chiudi
|
||||
|
@ -821,6 +821,7 @@ remove_account_link=連携アカウントの削除
|
||||
remove_account_link_desc=連携アカウントを削除し、Giteaアカウントへのアクセス権を取り消します。 続行しますか?
|
||||
remove_account_link_success=連携アカウントを削除しました。
|
||||
|
||||
hooks.desc=このユーザーが所有する<strong>すべてのリポジトリ</strong>でトリガーされるWebhookを追加します。
|
||||
|
||||
orgs_none=あなたはどの組織のメンバーでもありません。
|
||||
repos_none=あなたはリポジトリを所有していません。
|
||||
@ -1368,7 +1369,7 @@ issues.context.reference_issue=新しいイシューから参照
|
||||
issues.context.edit=編集
|
||||
issues.context.delete=削除
|
||||
issues.no_content=まだ内容がありません
|
||||
issues.close_issue=クローズする
|
||||
issues.close=イシューをクローズ
|
||||
issues.pull_merged_at=`がコミット <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> を <b>%[3]s</b> にマージ %[4]s`
|
||||
issues.manually_pull_merged_at=`がコミット <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> を <b>%[3]s</b> に手動マージ %[4]s`
|
||||
issues.close_comment_issue=コメントしてクローズ
|
||||
@ -1653,6 +1654,7 @@ pulls.update_branch_rebase=リベースでブランチを更新
|
||||
pulls.update_branch_success=ブランチの更新が成功しました
|
||||
pulls.update_not_allowed=ブランチを更新する権限がありません
|
||||
pulls.outdated_with_base_branch=このブランチはベースブランチに対して最新ではありません
|
||||
pulls.close=プルリクエストをクローズ
|
||||
pulls.closed_at=`がプルリクエストをクローズ <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
pulls.reopened_at=`がプルリクエストを再オープン <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
pulls.merge_instruction_hint=`<a class="show-instruction">コマンドラインの手順</a>も確認できます。`
|
||||
@ -2289,6 +2291,8 @@ release.edit_subheader=リリースで、プロジェクトのバージョンを
|
||||
release.tag_name=タグ名
|
||||
release.target=ターゲット
|
||||
release.tag_helper=既存のタグを選択するか、新しいタグを作成します。
|
||||
release.tag_helper_new=新しいタグです。 このタグはターゲットから作成されます。
|
||||
release.tag_helper_existing=存在するタグです。
|
||||
release.title=タイトル
|
||||
release.content=内容
|
||||
release.prerelease_desc=プレリリース
|
||||
@ -2418,6 +2422,7 @@ settings.delete_prompt=組織は恒久的に削除され、元に戻すことは
|
||||
settings.confirm_delete_account=削除を確認
|
||||
settings.delete_org_title=組織の削除
|
||||
settings.delete_org_desc=組織を恒久的に削除します。 続行しますか?
|
||||
settings.hooks_desc=この組織の<strong>すべてのリポジトリ</strong>でトリガーされるWebhookを追加します。
|
||||
|
||||
settings.labels_desc=この組織の<strong>すべてのリポジトリ</strong>で使用可能なイシューラベルを追加します。
|
||||
|
||||
@ -2930,6 +2935,8 @@ config.git_disable_diff_highlight=Diffのシンタックスハイライトが無
|
||||
config.git_max_diff_lines=最大の差分行数(1ファイルあたり)
|
||||
config.git_max_diff_line_characters=最大の差分文字数(1行あたり)
|
||||
config.git_max_diff_files=差分を表示する最大ファイル数
|
||||
config.git_enable_reflogs=Reflog有効
|
||||
config.git_reflog_expiry_time=有効期間
|
||||
config.git_gc_args=GC引数
|
||||
config.git_migrate_timeout=移行タイムアウト
|
||||
config.git_mirror_timeout=ミラー更新タイムアウト
|
||||
@ -3234,6 +3241,9 @@ rubygems.required.ruby=必要なRubyバージョン
|
||||
rubygems.required.rubygems=必要なRubyGemバージョン
|
||||
rubygems.documentation=RubyGemsレジストリの詳細については、<a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/packages/rubygems/">ドキュメント</a> を参照してください。
|
||||
swift.registry=このレジストリをコマンドラインからセットアップします:
|
||||
swift.install=あなたの <code>Package.swift</code> ファイルにパッケージを追加します:
|
||||
swift.install2=そして次のコマンドを実行します:
|
||||
swift.documentation=Swift レジストリの詳細については、 <a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/packages/swift/">ドキュメント</a> を参照してください。
|
||||
vagrant.install=Vagrant ボックスを追加するには、次のコマンドを実行します。
|
||||
vagrant.documentation=Vagrantレジストリの詳細については <a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/packages/vagrant/">ドキュメント</a>を参照してください。
|
||||
settings.link=このパッケージをリポジトリにリンク
|
||||
|
@ -787,7 +787,6 @@ issues.delete_comment_confirm=이 댓글을 정말 삭제하시겠습니까?
|
||||
issues.context.edit=수정하기
|
||||
issues.context.delete=삭제
|
||||
issues.no_content=아직 콘텐츠가 없습니다.
|
||||
issues.close_issue=닫기
|
||||
issues.close_comment_issue=클로즈 및 코멘트
|
||||
issues.reopen_issue=다시 열기
|
||||
issues.reopen_comment_issue=다시 오픈 및 코멘트
|
||||
|
@ -1461,7 +1461,6 @@ issues.context.reference_issue=Atsaukties uz šo jaunā problēmā
|
||||
issues.context.edit=Labot
|
||||
issues.context.delete=Dzēst
|
||||
issues.no_content=Vēl nav satura.
|
||||
issues.close_issue=Aizvērt
|
||||
issues.pull_merged_at=`sapludināja revīziju <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> atzarā <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`manuāli sapludināja revīziju <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> atzarā <b>%[3]s</b> %[4]s`
|
||||
issues.close_comment_issue=Komentēt un aizvērt
|
||||
|
@ -1315,7 +1315,6 @@ issues.context.reference_issue=Verwijs in nieuw issue
|
||||
issues.context.edit=Bewerken
|
||||
issues.context.delete=Verwijder
|
||||
issues.no_content=Er is nog geen inhoud.
|
||||
issues.close_issue=Sluit
|
||||
issues.pull_merged_at=`commit samengevoegd <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> in <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`commit <a class="ui sha" href="%[1]s"> handmatig samengevoegd <code>%[2]s</code></a> in <b>%[3]s</b> %[4]s`
|
||||
issues.close_comment_issue=Reageer en sluit
|
||||
|
@ -1208,7 +1208,6 @@ issues.context.quote_reply=Cytuj odpowiedź
|
||||
issues.context.edit=Edytuj
|
||||
issues.context.delete=Usuń
|
||||
issues.no_content=Nie ma jeszcze treści.
|
||||
issues.close_issue=Zamknij
|
||||
issues.close_comment_issue=Skomentuj i zamknij
|
||||
issues.reopen_issue=Otwórz ponownie
|
||||
issues.reopen_comment_issue=Skomentuj i otwórz ponownie
|
||||
|
@ -1369,7 +1369,6 @@ issues.context.reference_issue=Referência em uma nova issue
|
||||
issues.context.edit=Editar
|
||||
issues.context.delete=Excluir
|
||||
issues.no_content=Ainda não há conteúdo.
|
||||
issues.close_issue=Fechar
|
||||
issues.pull_merged_at=`aplicou o merge do commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> em <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`aplicou o merge do commit <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> em <b>%[3]s</b> manualmente %[4]s`
|
||||
issues.close_comment_issue=Comentar e fechar
|
||||
|
@ -1369,7 +1369,6 @@ issues.context.reference_issue=Criar uma nova questão referindo esta
|
||||
issues.context.edit=Editar
|
||||
issues.context.delete=Eliminar
|
||||
issues.no_content=Ainda não há conteúdo.
|
||||
issues.close_issue=Fechar
|
||||
issues.pull_merged_at=`integrou o cometimento <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> no ramo <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`integrou o cometimento <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> no ramo <b>%[3]s</b> manualmente %[4]s`
|
||||
issues.close_comment_issue=Comentar e fechar
|
||||
|
@ -1274,7 +1274,6 @@ issues.context.reference_issue=Ссылка в новой задаче
|
||||
issues.context.edit=Редактировать
|
||||
issues.context.delete=Удалить
|
||||
issues.no_content=Пока нет содержимого.
|
||||
issues.close_issue=Закрыть
|
||||
issues.pull_merged_at=`объединил(а) коммит <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> в <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`%[4]s вручную объединил(а) коммит <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> в <b>%[3]s</b>`
|
||||
issues.close_comment_issue=Прокомментировать и закрыть
|
||||
|
@ -1164,7 +1164,6 @@ issues.context.reference_issue=නව නිකුතුවක යොමු ක
|
||||
issues.context.edit=සංස්කරණය
|
||||
issues.context.delete=මකන්න
|
||||
issues.no_content=තවම අන්තර්ගතයක් නැත.
|
||||
issues.close_issue=වසන්න
|
||||
issues.pull_merged_at=`ඒකාබද්ධ කැප <a class="ui sha" href="%[1]s"><code>%[2]ගේ</code></a> <b>%[3]ගේ</b> %[4]දින
|
||||
issues.manually_pull_merged_at=`ඒකාබද්ධ කැප <a class="ui sha" href="%[1]s"><code>%[2]ගේ</code></a> <b>%[3]ගේ</b> අත්පොත%[4]s`
|
||||
issues.close_comment_issue=අදහස් දක්වා වසන්න
|
||||
|
@ -1049,7 +1049,6 @@ issues.action_milestone=Míľnik
|
||||
issues.action_assignee=Príjemca
|
||||
issues.open_title=Otvoriť
|
||||
issues.context.reference_issue=Odkázať v novom úkole
|
||||
issues.close_issue=Zavrieť
|
||||
issues.closed_at=`uzavrel/a tento úkol <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.reopened_at=`znovuotvoril/a tento úkol <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.commit_ref_at=`odkázal na tento úkol z commitu <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
|
@ -1000,7 +1000,6 @@ issues.context.reference_issue=Referens i nytt ärende
|
||||
issues.context.edit=Redigera
|
||||
issues.context.delete=Ta bort
|
||||
issues.no_content=Det finns inget innehåll än.
|
||||
issues.close_issue=Stäng
|
||||
issues.close_comment_issue=Kommentera och stäng
|
||||
issues.reopen_issue=Återöppna
|
||||
issues.reopen_comment_issue=Kommentera och återöppna
|
||||
|
@ -1373,7 +1373,6 @@ issues.context.reference_issue=Yeni konuda referans
|
||||
issues.context.edit=Düzenle
|
||||
issues.context.delete=Sil
|
||||
issues.no_content=Henüz bir içerik yok.
|
||||
issues.close_issue=Kapat
|
||||
issues.pull_merged_at=`<a class="ui sha" href="%[1]s"><code>%[2]s</code></a> işlemesini <b>%[3]s</b> %[4]s ile birleştirdi`
|
||||
issues.manually_pull_merged_at=`<a class="ui sha" href="%[1]s"><code>%[2]s</code></a> işlemesini <b>%[3]s</b> %[4]s ile elle birleştirdi`
|
||||
issues.close_comment_issue=Yorum Yap ve Kapat
|
||||
|
@ -1221,7 +1221,6 @@ issues.context.reference_issue=Посилання в новій задачі
|
||||
issues.context.edit=Редагувати
|
||||
issues.context.delete=Видалити
|
||||
issues.no_content=Тут ще немає жодного змісту.
|
||||
issues.close_issue=Закрити
|
||||
issues.pull_merged_at=`Злиті коміти <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> в <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`%[4]s вручну злив коміти <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> в <b>%[3]s</b>`
|
||||
issues.close_comment_issue=Прокоментувати і закрити
|
||||
|
@ -1368,7 +1368,6 @@ issues.context.reference_issue=在新工单中引用
|
||||
issues.context.edit=编辑
|
||||
issues.context.delete=刪除
|
||||
issues.no_content=这个人很懒,什么都没留下。
|
||||
issues.close_issue=关闭
|
||||
issues.pull_merged_at=`于 %[4]s 合并了提交 <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> 到 <b>%[3]s</b>`
|
||||
issues.manually_pull_merged_at=`于 %[4]s 手动合并了提交 <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> 到 <b>%[3]s</b>`
|
||||
issues.close_comment_issue=评论并关闭
|
||||
|
@ -442,7 +442,6 @@ issues.commented_at=` 評論 <a href="#%s"> %s</a>`
|
||||
issues.delete_comment_confirm=您確定要刪除該條評論嗎?
|
||||
issues.context.edit=編輯
|
||||
issues.no_content=尚未有任何內容
|
||||
issues.close_issue=關閉
|
||||
issues.reopen_issue=重新開啟
|
||||
issues.create_comment=評論
|
||||
issues.commit_ref_at=`在代碼提交 <a id="%[1]s" href="#%[1]s">%[2]s</a> 中引用了該問題`
|
||||
|
@ -1369,7 +1369,7 @@ issues.context.reference_issue=新增問題並參考
|
||||
issues.context.edit=編輯
|
||||
issues.context.delete=刪除
|
||||
issues.no_content=尚未有任何內容
|
||||
issues.close_issue=關閉
|
||||
issues.close=關閉問題
|
||||
issues.pull_merged_at=`合併了提交 <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> 至 <b>%[3]s</b> %[4]s`
|
||||
issues.manually_pull_merged_at=`手動合併了提交 <a class="ui sha" href="%[1]s"><code>%[2]s</code></a> 至 <b>%[3]s</b> %[4]s`
|
||||
issues.close_comment_issue=留言並關閉
|
||||
@ -1654,6 +1654,7 @@ pulls.update_branch_rebase=以 Rebase 更新分支
|
||||
pulls.update_branch_success=分支更新成功
|
||||
pulls.update_not_allowed=您無權更新分支
|
||||
pulls.outdated_with_base_branch=相對於基底分支,此分支已過時
|
||||
pulls.close=關閉合併請求
|
||||
pulls.closed_at=`關閉了這個合併請求 <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
pulls.reopened_at=`重新開放了這個合併請求 <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
pulls.merge_instruction_hint=`您也可以查看<a class="show-instruction">命令列指南</a>。`
|
||||
|
2854
package-lock.json
generated
38
package.json
@ -4,42 +4,42 @@
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"engines": {
|
||||
"node": ">= 14.0.0"
|
||||
"node": ">= 16.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@citation-js/core": "0.6.5",
|
||||
"@citation-js/plugin-bibtex": "0.6.5",
|
||||
"@citation-js/plugin-csl": "0.6.5",
|
||||
"@citation-js/plugin-bibtex": "0.6.6",
|
||||
"@citation-js/plugin-csl": "0.6.7",
|
||||
"@citation-js/plugin-software-formats": "0.6.0",
|
||||
"@claviska/jquery-minicolors": "2.3.6",
|
||||
"@mcaptcha/vanilla-glue": "0.1.0-alpha-3",
|
||||
"@primer/octicons": "17.10.2",
|
||||
"@vue/compiler-sfc": "3.2.45",
|
||||
"@primer/octicons": "18.2.0",
|
||||
"@vue/compiler-sfc": "3.2.47",
|
||||
"add-asset-webpack-plugin": "2.0.1",
|
||||
"ansi-to-html": "0.7.2",
|
||||
"asciinema-player": "3.0.1",
|
||||
"asciinema-player": "3.2.0",
|
||||
"css-loader": "6.7.3",
|
||||
"dropzone": "6.0.0-beta.2",
|
||||
"easymde": "2.18.0",
|
||||
"esbuild-loader": "2.21.0",
|
||||
"esbuild-loader": "3.0.1",
|
||||
"escape-goat": "4.0.0",
|
||||
"fast-glob": "3.2.12",
|
||||
"font-awesome": "4.7.0",
|
||||
"jquery": "3.6.3",
|
||||
"jquery": "3.6.4",
|
||||
"jquery.are-you-sure": "1.9.0",
|
||||
"katex": "0.16.4",
|
||||
"license-checker-webpack-plugin": "0.2.1",
|
||||
"mermaid": "10.0.2",
|
||||
"mini-css-extract-plugin": "2.7.4",
|
||||
"monaco-editor": "0.34.1",
|
||||
"monaco-editor": "0.36.1",
|
||||
"monaco-editor-webpack-plugin": "7.0.1",
|
||||
"pretty-ms": "8.0.0",
|
||||
"sortablejs": "1.15.0",
|
||||
"swagger-ui-dist": "4.15.5",
|
||||
"swagger-ui-dist": "4.18.1",
|
||||
"tippy.js": "6.3.7",
|
||||
"tributejs": "5.1.3",
|
||||
"uint8-to-base64": "0.2.0",
|
||||
"vue": "3.2.45",
|
||||
"vue": "3.2.47",
|
||||
"vue-bar-graph": "2.0.0",
|
||||
"vue-loader": "17.0.1",
|
||||
"vue3-calendar-heatmap": "2.0.0",
|
||||
@ -48,25 +48,25 @@
|
||||
"workbox-routing": "6.5.4",
|
||||
"workbox-strategies": "6.5.4",
|
||||
"worker-loader": "3.0.8",
|
||||
"wrap-ansi": "8.0.1"
|
||||
"wrap-ansi": "8.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "1.29.2",
|
||||
"@playwright/test": "1.31.2",
|
||||
"@rollup/pluginutils": "5.0.2",
|
||||
"@stoplight/spectral-cli": "6.6.0",
|
||||
"eslint": "8.32.0",
|
||||
"eslint": "8.36.0",
|
||||
"eslint-plugin-import": "2.27.5",
|
||||
"eslint-plugin-jquery": "1.5.1",
|
||||
"eslint-plugin-sonarjs": "0.18.0",
|
||||
"eslint-plugin-unicorn": "45.0.2",
|
||||
"eslint-plugin-unicorn": "46.0.0",
|
||||
"eslint-plugin-vue": "9.9.0",
|
||||
"jsdom": "21.0.0",
|
||||
"jsdom": "21.1.1",
|
||||
"markdownlint-cli": "0.33.0",
|
||||
"stylelint": "15.2.0",
|
||||
"stylelint": "15.3.0",
|
||||
"stylelint-declaration-strict-value": "1.9.2",
|
||||
"svgo": "3.0.2",
|
||||
"updates": "13.2.7",
|
||||
"vitest": "0.27.2"
|
||||
"updates": "13.2.9",
|
||||
"vitest": "0.29.3"
|
||||
},
|
||||
"browserslist": [
|
||||
"defaults",
|
||||
|
@ -1 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-chevron-down" width="16" height="16" aria-hidden="true"><path d="M12.78 6.22a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L3.22 7.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L8 9.94l3.72-3.72a.75.75 0 0 1 1.06 0Z"/></svg>
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-chevron-down" width="16" height="16" aria-hidden="true"><path d="M12.78 5.22a.749.749 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.06 0L3.22 6.28a.749.749 0 1 1 1.06-1.06L8 8.939l3.72-3.719a.749.749 0 0 1 1.06 0Z"/></svg>
|
Before Width: | Height: | Size: 279 B After Width: | Height: | Size: 261 B |
@ -1 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-chevron-up" width="16" height="16" aria-hidden="true"><path d="M3.22 9.78a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.06 0l4.25 4.25a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018L8 6.06 4.28 9.78a.75.75 0 0 1-1.06 0Z"/></svg>
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-chevron-up" width="16" height="16" aria-hidden="true"><path d="M3.22 10.53a.749.749 0 0 1 0-1.06l4.25-4.25a.749.749 0 0 1 1.06 0l4.25 4.25a.749.749 0 1 1-1.06 1.06L8 6.811 4.28 10.53a.749.749 0 0 1-1.06 0Z"/></svg>
|
Before Width: | Height: | Size: 274 B After Width: | Height: | Size: 258 B |
1
public/img/svg/octicon-discussion-closed.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-discussion-closed" width="16" height="16" aria-hidden="true"><path d="M0 2.75C0 1.783.784 1 1.75 1h8.5c.967 0 1.75.783 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.457 1.457 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25Zm1.75-.25a.25.25 0 0 0-.25.25v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.189L6.22 8.72a.747.747 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25Zm12.5 2h-.5a.75.75 0 0 1 0-1.5h.5c.967 0 1.75.783 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.457 1.457 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 1 1 1.06-1.06l2.22 2.219V11.25a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25Zm-5.47.28-3 3a.747.747 0 0 1-1.06 0l-1.5-1.5a.749.749 0 1 1 1.06-1.06l.97.969L7.72 3.72a.749.749 0 1 1 1.06 1.06Z"/></svg>
|
After Width: | Height: | Size: 817 B |
1
public/img/svg/octicon-discussion-duplicate.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-discussion-duplicate" width="16" height="16" aria-hidden="true"><path d="M0 2.75C0 1.783.784 1 1.75 1h8.5c.967 0 1.75.783 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.457 1.457 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25Zm1.75-.25a.25.25 0 0 0-.25.25v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.189L6.22 8.72a.747.747 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25Zm12.5 2h-.5a.75.75 0 0 1 0-1.5h.5c.967 0 1.75.783 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.457 1.457 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 1 1 1.06-1.06l2.22 2.219V11.25a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25Zm-6.282.03L5.03 7.468a.749.749 0 1 1-1.06-1.061L6.907 3.47a.75.75 0 0 1 1.061 1.06Z"/></svg>
|
After Width: | Height: | Size: 790 B |
1
public/img/svg/octicon-discussion-outdated.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-discussion-outdated" width="16" height="16" aria-hidden="true"><path d="M0 2.75C0 1.783.784 1 1.75 1h8.5c.967 0 1.75.783 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.457 1.457 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25Zm1.75-.25a.25.25 0 0 0-.25.25v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.189L6.22 8.72a.747.747 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25Zm12.5 2h-.5a.75.75 0 0 1 0-1.5h.5c.967 0 1.75.783 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.457 1.457 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 1 1 1.06-1.06l2.22 2.219V11.25a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25ZM6.5 4v1.492l.466.187.036.015.812.375a.75.75 0 1 1-.628 1.362l-.795-.367-.92-.368A.75.75 0 0 1 5 6V4a.75.75 0 0 1 1.5 0Z"/></svg>
|
After Width: | Height: | Size: 826 B |
@ -1 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-download" width="16" height="16" aria-hidden="true"><path d="M7.47 10.78 3.72 7.03a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018l2.47 2.47V1.75a.75.75 0 0 1 1.5 0v6.69l2.47-2.47a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-3.75 3.75a.75.75 0 0 1-1.06 0ZM3.75 13h8.5a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1 0-1.5Z"/></svg>
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-download" width="16" height="16" aria-hidden="true"><path d="M2.75 14A1.75 1.75 0 0 1 1 12.25v-2.5a.75.75 0 0 1 1.5 0v2.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25v-2.5a.75.75 0 0 1 1.5 0v2.5A1.75 1.75 0 0 1 13.25 14Z"/><path d="M7.25 7.689V2a.75.75 0 0 1 1.5 0v5.689l1.97-1.969a.749.749 0 1 1 1.06 1.06l-3.25 3.25a.749.749 0 0 1-1.06 0L4.22 6.78a.749.749 0 1 1 1.06-1.06l1.97 1.969Z"/></svg>
|
Before Width: | Height: | Size: 373 B After Width: | Height: | Size: 440 B |
1
public/img/svg/octicon-fiscal-host.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-fiscal-host" width="16" height="16" aria-hidden="true"><path d="M10 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"/><path d="M4 9.25h-.75a.75.75 0 0 1 0-1.5H4v-1.5h-.75a.75.75 0 0 1 0-1.5H4V3.5a1 1 0 0 1 1-1h7.5a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1ZM5.5 4v.793a.75.75 0 0 1 0 1.414v1.586a.75.75 0 0 1 0 1.414V10H12V4Z"/><path d="M12.75 14.25V14h-9.5v.25a.75.75 0 0 1-1.5 0V14A1.75 1.75 0 0 1 0 12.25V1.75C0 .784.784 0 1.75 0h12.5C15.217 0 16 .784 16 1.75v10.5A1.75 1.75 0 0 1 14.25 14v.25a.75.75 0 0 1-1.5 0ZM1.75 1.5a.25.25 0 0 0-.25.25v10.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25Z"/></svg>
|
After Width: | Height: | Size: 662 B |
@ -1 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-issue-tracked-by" width="16" height="16" aria-hidden="true"><path d="M1.5 8a6.5 6.5 0 0 1 13 0A.75.75 0 0 0 16 8a8 8 0 1 0-8 8 .75.75 0 0 0 0-1.5A6.5 6.5 0 0 1 1.5 8Z"/><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm1.5 1.75a.75.75 0 0 1 .75-.75h5a.75.75 0 0 1 0 1.5h-5a.75.75 0 0 1-.75-.75Zm2.75 2.25a.75.75 0 0 0 0 1.5h3a.75.75 0 0 0 0-1.5h-3Z"/></svg>
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-issue-tracked-by" width="16" height="16" aria-hidden="true"><path d="M1.5 8a6.5 6.5 0 0 1 13 0A.75.75 0 0 0 16 8a8 8 0 1 0-8 8 .75.75 0 0 0 0-1.5A6.5 6.5 0 0 1 1.5 8Z"/><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm3.573 5.823-2.896-2.896a.25.25 0 0 1 0-.354l2.896-2.896a.25.25 0 0 1 .427.177V11.5h3.25a.75.75 0 0 1 0 1.5H12v2.146a.25.25 0 0 1-.427.177Z"/></svg>
|
Before Width: | Height: | Size: 404 B After Width: | Height: | Size: 413 B |
@ -1 +0,0 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-issue-tracked-in" width="16" height="16" aria-hidden="true"><path d="M1.5 8a6.5 6.5 0 0 1 13 0A.75.75 0 0 0 16 8a8 8 0 1 0-8 8 .75.75 0 0 0 0-1.5A6.5 6.5 0 0 1 1.5 8Z"/><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm3.573 5.823-2.896-2.896a.25.25 0 0 1 0-.354l2.896-2.896a.25.25 0 0 1 .427.177V11.5h3.25a.75.75 0 0 1 0 1.5H12v2.146a.25.25 0 0 1-.427.177Z"/></svg>
|
Before Width: | Height: | Size: 413 B |
1
public/img/svg/octicon-issue-tracks.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-issue-tracks" width="16" height="16" aria-hidden="true"><path d="M1.5 8a6.5 6.5 0 0 1 13 0A.75.75 0 0 0 16 8a8 8 0 1 0-8 8 .75.75 0 0 0 0-1.5A6.5 6.5 0 0 1 1.5 8Z"/><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm1.5 1.75a.75.75 0 0 1 .75-.75h5a.75.75 0 0 1 0 1.5h-5a.75.75 0 0 1-.75-.75Zm2.75 2.25a.75.75 0 0 0 0 1.5h3a.75.75 0 0 0 0-1.5h-3Z"/></svg>
|
After Width: | Height: | Size: 400 B |
1
public/img/svg/octicon-move-to-bottom.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-move-to-bottom" width="16" height="16" aria-hidden="true"><path d="M7.47 10.78a.749.749 0 0 0 1.06 0l3.75-3.75a.749.749 0 1 0-1.06-1.06L8.75 8.439V1.75a.75.75 0 0 0-1.5 0v6.689L4.78 5.97a.749.749 0 1 0-1.06 1.06l3.75 3.75ZM3.75 13a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5Z"/></svg>
|
After Width: | Height: | Size: 331 B |
1
public/img/svg/octicon-move-to-end.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-move-to-end" width="16" height="16" aria-hidden="true"><path d="m10.78 8.53-3.75 3.75a.749.749 0 1 1-1.06-1.06l2.469-2.47H1.75a.75.75 0 0 1 0-1.5h6.689L5.97 4.78a.749.749 0 1 1 1.06-1.06l3.75 3.75a.749.749 0 0 1 0 1.06ZM13 12.25v-8.5a.75.75 0 0 1 1.5 0v8.5a.75.75 0 0 1-1.5 0Z"/></svg>
|
After Width: | Height: | Size: 329 B |
1
public/img/svg/octicon-move-to-start.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-move-to-start" width="16" height="16" aria-hidden="true"><path d="M5.22 7.47a.749.749 0 0 0 0 1.06l3.75 3.75a.749.749 0 1 0 1.06-1.06L7.561 8.75h6.689a.75.75 0 0 0 0-1.5H7.561l2.469-2.47a.749.749 0 1 0-1.06-1.06L5.22 7.47ZM3 3.75a.75.75 0 0 0-1.5 0v8.5a.75.75 0 0 0 1.5 0v-8.5Z"/></svg>
|
After Width: | Height: | Size: 330 B |
1
public/img/svg/octicon-move-to-top.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-move-to-top" width="16" height="16" aria-hidden="true"><path d="M8.53 1.22a.749.749 0 0 0-1.06 0L3.72 4.97a.749.749 0 1 0 1.06 1.06l2.47-2.469v6.689a.75.75 0 0 0 1.5 0V3.561l2.47 2.469a.749.749 0 1 0 1.06-1.06L8.53 1.22ZM3.75 13a.75.75 0 0 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-8.5Z"/></svg>
|
After Width: | Height: | Size: 329 B |
1
public/img/svg/octicon-passkey-fill.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-passkey-fill" width="16" height="16" aria-hidden="true"><path d="M2.743 4.757a3.757 3.757 0 1 1 5.851 3.119 5.991 5.991 0 0 1 2.15 1.383c.17.17.257.405.258.646.003.598.001 1.197 0 1.795L11 12.778v.721a.5.5 0 0 1-.5.5H1.221a.749.749 0 0 1-.714-.784 6.004 6.004 0 0 1 3.899-5.339 3.754 3.754 0 0 1-1.663-3.119Z"/><path d="M15.75 6.875c0 .874-.448 1.643-1.127 2.09a.265.265 0 0 0-.123.22v.59c0 .067-.026.13-.073.177l-.356.356a.125.125 0 0 0 0 .177l.356.356c.047.047.073.11.073.176v.231c0 .067-.026.13-.073.177l-.356.356a.125.125 0 0 0 0 .177l.356.356c.047.047.073.11.073.177v.287a.247.247 0 0 1-.065.168l-.8.88a.52.52 0 0 1-.77 0l-.8-.88a.247.247 0 0 1-.065-.168V9.185a.264.264 0 0 0-.123-.22 2.5 2.5 0 1 1 3.873-2.09ZM14 6.5a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z"/></svg>
|
After Width: | Height: | Size: 814 B |
1
public/img/svg/octicon-sparkle-fill.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-sparkle-fill" width="16" height="16" aria-hidden="true"><path d="M7.53 1.282a.5.5 0 0 1 .94 0l.478 1.306a7.492 7.492 0 0 0 4.464 4.464l1.305.478a.5.5 0 0 1 0 .94l-1.305.478a7.492 7.492 0 0 0-4.464 4.464l-.478 1.305a.5.5 0 0 1-.94 0l-.478-1.305a7.492 7.492 0 0 0-4.464-4.464L1.282 8.47a.5.5 0 0 1 0-.94l1.306-.478a7.492 7.492 0 0 0 4.464-4.464Z"/></svg>
|
After Width: | Height: | Size: 396 B |
@ -1 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-upload" width="16" height="16" aria-hidden="true"><path d="m8.53 1.22 3.75 3.75a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8.75 3.56v6.69a.75.75 0 0 1-1.5 0V3.56L4.78 6.03a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75a.75.75 0 0 1 1.06 0ZM3.75 13h8.5a.75.75 0 0 1 0 1.5h-8.5a.75.75 0 0 1 0-1.5Z"/></svg>
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-upload" width="16" height="16" aria-hidden="true"><path d="M2.75 14A1.75 1.75 0 0 1 1 12.25v-2.5a.75.75 0 0 1 1.5 0v2.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25v-2.5a.75.75 0 0 1 1.5 0v2.5A1.75 1.75 0 0 1 13.25 14Z"/><path d="M11.78 4.72a.749.749 0 1 1-1.06 1.06L8.75 3.811V9.5a.75.75 0 0 1-1.5 0V3.811L5.28 5.78a.749.749 0 1 1-1.06-1.06l3.25-3.25a.749.749 0 0 1 1.06 0l3.25 3.25Z"/></svg>
|
Before Width: | Height: | Size: 369 B After Width: | Height: | Size: 438 B |
1
public/img/svg/octicon-zoom-in.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-zoom-in" width="16" height="16" aria-hidden="true"><path d="M3.75 7.5a.75.75 0 0 1 .75-.75h2.25V4.5a.75.75 0 0 1 1.5 0v2.25h2.25a.75.75 0 0 1 0 1.5H8.25v2.25a.75.75 0 0 1-1.5 0V8.25H4.5a.75.75 0 0 1-.75-.75Z"/><path d="M7.5 0a7.5 7.5 0 0 1 5.807 12.247l2.473 2.473a.749.749 0 1 1-1.06 1.06l-2.473-2.473A7.5 7.5 0 1 1 7.5 0Zm-6 7.5a6 6 0 1 0 12 0 6 6 0 0 0-12 0Z"/></svg>
|
After Width: | Height: | Size: 414 B |
1
public/img/svg/octicon-zoom-out.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 16 16" class="svg octicon-zoom-out" width="16" height="16" aria-hidden="true"><path d="M4.5 6.75h6a.75.75 0 0 1 0 1.5h-6a.75.75 0 0 1 0-1.5Z"/><path d="M0 7.5a7.5 7.5 0 1 1 13.307 4.747l2.473 2.473a.749.749 0 1 1-1.06 1.06l-2.473-2.473A7.5 7.5 0 0 1 0 7.5Zm7.5-6a6 6 0 1 0 0 12 6 6 0 0 0 0-12Z"/></svg>
|
After Width: | Height: | Size: 320 B |
@ -45,6 +45,7 @@ func createPackageMetadataResponse(registryURL string, pds []*packages_model.Pac
|
||||
Author: npm_module.User{Name: metadata.Author},
|
||||
License: metadata.License,
|
||||
Versions: versions,
|
||||
Repository: metadata.Repository,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -51,12 +51,18 @@ func Projects(ctx *context.Context) {
|
||||
page = 1
|
||||
}
|
||||
|
||||
var projectType project_model.Type
|
||||
if ctx.ContextUser.IsOrganization() {
|
||||
projectType = project_model.TypeOrganization
|
||||
} else {
|
||||
projectType = project_model.TypeIndividual
|
||||
}
|
||||
projects, total, err := project_model.FindProjects(ctx, project_model.SearchOptions{
|
||||
OwnerID: ctx.ContextUser.ID,
|
||||
Page: page,
|
||||
IsClosed: util.OptionalBoolOf(isShowClosed),
|
||||
SortType: sortType,
|
||||
Type: project_model.TypeOrganization,
|
||||
Type: projectType,
|
||||
})
|
||||
if err != nil {
|
||||
ctx.ServerError("FindProjects", err)
|
||||
@ -66,7 +72,7 @@ func Projects(ctx *context.Context) {
|
||||
opTotal, err := project_model.CountProjects(ctx, project_model.SearchOptions{
|
||||
OwnerID: ctx.ContextUser.ID,
|
||||
IsClosed: util.OptionalBoolOf(!isShowClosed),
|
||||
Type: project_model.TypeOrganization,
|
||||
Type: projectType,
|
||||
})
|
||||
if err != nil {
|
||||
ctx.ServerError("CountProjects", err)
|
||||
@ -143,14 +149,21 @@ func NewProjectPost(ctx *context.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
if err := project_model.NewProject(&project_model.Project{
|
||||
newProject := project_model.Project{
|
||||
OwnerID: ctx.ContextUser.ID,
|
||||
Title: form.Title,
|
||||
Description: form.Content,
|
||||
CreatorID: ctx.Doer.ID,
|
||||
BoardType: form.BoardType,
|
||||
Type: project_model.TypeOrganization,
|
||||
}); err != nil {
|
||||
}
|
||||
|
||||
if ctx.ContextUser.IsOrganization() {
|
||||
newProject.Type = project_model.TypeOrganization
|
||||
} else {
|
||||
newProject.Type = project_model.TypeIndividual
|
||||
}
|
||||
|
||||
if err := project_model.NewProject(&newProject); err != nil {
|
||||
ctx.ServerError("NewProject", err)
|
||||
return
|
||||
}
|
||||
|
@ -216,7 +216,7 @@
|
||||
<div class="gt-df gt-ac">
|
||||
{{if .Verification.Verified}}
|
||||
{{if ne .Verification.SigningUser.ID 0}}
|
||||
{{svg "octicon-shield-check" 16 "gt-mr-3"}}
|
||||
{{svg "octicon-verified" 16 "gt-mr-3"}}
|
||||
{{if .Verification.SigningSSHKey}}
|
||||
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||
@ -225,7 +225,7 @@
|
||||
{{.Verification.SigningKey.PaddedKeyID}}
|
||||
{{end}}
|
||||
{{else}}
|
||||
{{svg "octicon-shield-lock" 16 "gt-mr-3"}}
|
||||
{{svg "octicon-unverified" 16 "gt-mr-3"}}
|
||||
{{if .Verification.SigningSSHKey}}
|
||||
<span class="ui text gt-mr-3 tooltip" data-content="{{.locale.Tr "gpg.default_key"}}">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||
@ -235,7 +235,7 @@
|
||||
{{end}}
|
||||
{{end}}
|
||||
{{else if .Verification.Warning}}
|
||||
{{svg "octicon-shield" 16 "gt-mr-3"}}
|
||||
{{svg "octicon-unverified" 16 "gt-mr-3"}}
|
||||
{{if .Verification.SigningSSHKey}}
|
||||
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||
@ -246,14 +246,14 @@
|
||||
{{else}}
|
||||
{{if .Verification.SigningKey}}
|
||||
{{if ne .Verification.SigningKey.KeyID ""}}
|
||||
{{svg "octicon-shield" 16 "gt-mr-3"}}
|
||||
{{svg "octicon-verified" 16 "gt-mr-3"}}
|
||||
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
||||
{{.Verification.SigningKey.PaddedKeyID}}
|
||||
{{end}}
|
||||
{{end}}
|
||||
{{if .Verification.SigningSSHKey}}
|
||||
{{if ne .Verification.SigningSSHKey.Fingerprint ""}}
|
||||
{{svg "octicon-shield" 16 "gt-mr-3"}}
|
||||
{{svg "octicon-verified" 16 "gt-mr-3"}}
|
||||
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||
{{end}}
|
||||
|
@ -24,7 +24,7 @@
|
||||
{{svg "octicon-diff" 16 "gt-mr-2"}}{{.locale.Tr "repo.diff.stats_desc" .Diff.NumFiles .Diff.TotalAddition .Diff.TotalDeletion | Str2html}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="diff-detail-actions gt-df gt-ac gt-w-100">
|
||||
<div class="diff-detail-actions gt-df gt-ac">
|
||||
{{if and .PageIsPullFiles $.SignedUserID (not .IsArchived)}}
|
||||
<progress id="viewed-files-summary" class="gt-mr-2" value="{{.Diff.NumViewedFiles}}" max="{{.Diff.NumFiles}}"></progress>
|
||||
<label for="viewed-files-summary" id="viewed-files-summary-label" class="gt-mr-3 gt-f1" data-text-changed-template="{{.locale.Tr "repo.pulls.viewed_files_label"}}">
|
||||
|
@ -4,7 +4,7 @@
|
||||
<span class="ui small label review-comments-counter" data-pending-comment-number="{{.PendingCodeCommentNumber}}">{{.PendingCodeCommentNumber}}</span>
|
||||
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
||||
</button>
|
||||
<div class="review-box-panel gt-hidden">
|
||||
<div class="review-box-panel tippy-target">
|
||||
<div class="ui segment">
|
||||
<form class="ui form" action="{{.Link}}/reviews/submit" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
|
@ -58,7 +58,7 @@
|
||||
</div>
|
||||
<div class="content">
|
||||
{{if .Verified}}
|
||||
<span class="tooltip" data-content="{{$.locale.Tr "settings.gpg_key_verified_long"}}">{{svg "octicon-shield-check"}} <strong>{{$.locale.Tr "settings.gpg_key_verified"}}</strong></span>
|
||||
<span class="tooltip" data-content="{{$.locale.Tr "settings.gpg_key_verified_long"}}">{{svg "octicon-verified"}} <strong>{{$.locale.Tr "settings.gpg_key_verified"}}</strong></span>
|
||||
{{end}}
|
||||
{{if gt (len .Emails) 0}}
|
||||
<span class="tooltip" data-content="{{$.locale.Tr "settings.gpg_key_matched_identities_long"}}">{{svg "octicon-mail"}} {{$.locale.Tr "settings.gpg_key_matched_identities"}} {{range .Emails}}<strong>{{.Email}} </strong>{{end}}</span>
|
||||
|
@ -51,7 +51,7 @@
|
||||
</div>
|
||||
<div class="content">
|
||||
{{if .Verified}}
|
||||
<span class="tooltip" data-content="{{$.locale.Tr "settings.ssh_key_verified_long"}}">{{svg "octicon-shield-check"}} <strong>{{$.locale.Tr "settings.ssh_key_verified"}}</strong></span>
|
||||
<span class="tooltip" data-content="{{$.locale.Tr "settings.ssh_key_verified_long"}}">{{svg "octicon-verified"}} <strong>{{$.locale.Tr "settings.ssh_key_verified"}}</strong></span>
|
||||
{{end}}
|
||||
<strong>{{.Name}}</strong>
|
||||
<div class="print meta">
|
||||
|
@ -37,6 +37,8 @@ func TestPackageNpm(t *testing.T) {
|
||||
packageDescription := "Test Description"
|
||||
packageBinName := "cli"
|
||||
packageBinPath := "./cli.sh"
|
||||
repoType := "gitea"
|
||||
repoURL := "http://localhost:3000/gitea/test.git"
|
||||
|
||||
data := "H4sIAAAAAAAA/ytITM5OTE/VL4DQelnF+XkMVAYGBgZmJiYK2MRBwNDcSIHB2NTMwNDQzMwAqA7IMDUxA9LUdgg2UFpcklgEdAql5kD8ogCnhwio5lJQUMpLzE1VslJQcihOzi9I1S9JLS7RhSYIJR2QgrLUouLM/DyQGkM9Az1D3YIiqExKanFyUWZBCVQ2BKhVwQVJDKwosbQkI78IJO/tZ+LsbRykxFXLNdA+HwWjYBSMgpENACgAbtAACAAA"
|
||||
|
||||
@ -62,6 +64,10 @@ func TestPackageNpm(t *testing.T) {
|
||||
"dist": {
|
||||
"integrity": "sha512-yA4FJsVhetynGfOC1jFf79BuS+jrHbm0fhh+aHzCQkOaOBXKf9oBnC4a6DnLLnEsHQDRLYd00cwj8sCXpC+wIg==",
|
||||
"shasum": "aaa7eaf852a948b0aa05afeda35b1badca155d90"
|
||||
},
|
||||
"repository": {
|
||||
"type": "` + repoType + `",
|
||||
"url": "` + repoURL + `"
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -169,6 +175,8 @@ func TestPackageNpm(t *testing.T) {
|
||||
assert.Equal(t, "sha512-yA4FJsVhetynGfOC1jFf79BuS+jrHbm0fhh+aHzCQkOaOBXKf9oBnC4a6DnLLnEsHQDRLYd00cwj8sCXpC+wIg==", pmv.Dist.Integrity)
|
||||
assert.Equal(t, "aaa7eaf852a948b0aa05afeda35b1badca155d90", pmv.Dist.Shasum)
|
||||
assert.Equal(t, fmt.Sprintf("%s%s/-/%s/%s", setting.AppURL, root[1:], packageVersion, filename), pmv.Dist.Tarball)
|
||||
assert.Equal(t, repoType, result.Repository.Type)
|
||||
assert.Equal(t, repoURL, result.Repository.URL)
|
||||
})
|
||||
|
||||
t.Run("AddTag", func(t *testing.T) {
|
||||
|
@ -1231,7 +1231,7 @@ a.ui.card:hover,
|
||||
/* enable fluid page widths for medium size viewports */
|
||||
@media (min-width: 768px) and (max-width: 1200px) {
|
||||
.ui.ui.ui.container:not(.fluid) {
|
||||
width: calc(100vw - 3em);
|
||||
width: calc(100vw - 64px);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1285,7 +1285,14 @@ a.ui.card:hover,
|
||||
.following.bar #navbar {
|
||||
width: 100vw;
|
||||
min-height: 52px;
|
||||
padding: 0 0.5rem;
|
||||
padding: 0 16px;
|
||||
}
|
||||
|
||||
@media (max-width: 767px) {
|
||||
.following.bar #navbar {
|
||||
padding-left: 4px;
|
||||
padding-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.following.bar #navbar .brand {
|
||||
@ -1491,7 +1498,7 @@ a.ui.card:hover,
|
||||
}
|
||||
|
||||
.ui.container.fluid.padded {
|
||||
padding: 0 10px;
|
||||
padding: 0 32px;
|
||||
}
|
||||
|
||||
.ui.form .ui.button {
|
||||
|
@ -214,6 +214,10 @@ a.blob-excerpt:hover {
|
||||
color: var(--color-primary-contrast);
|
||||
}
|
||||
|
||||
.review-box-panel .ui.segment {
|
||||
border: none;
|
||||
}
|
||||
|
||||
/* See the comment of createCommentEasyMDE() for the review editor */
|
||||
/* EasyMDE's options can not handle minHeight & maxHeight together correctly, we have to set minHeight in JS code */
|
||||
.review-box-panel .CodeMirror-scroll {
|
||||
@ -249,14 +253,6 @@ a.blob-excerpt:hover {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.review-box-panel {
|
||||
position: absolute;
|
||||
min-width: max-content;
|
||||
top: 45px;
|
||||
right: -5px;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
#review-box .review-comments-counter {
|
||||
background-color: var(--color-primary-light-4);
|
||||
color: var(--color-primary-contrast);
|
||||
|
@ -72,17 +72,13 @@
|
||||
<ul class="repo-owner-name-list">
|
||||
<li v-for="repo in repos" :class="{'private': repo.private || repo.internal}" :key="repo.id">
|
||||
<a class="repo-list-link gt-df gt-ac gt-sb" :href="repo.link">
|
||||
<div class="item-name gt-df gt-ac gt-f1 gt-mr-2">
|
||||
<div class="item-name gt-df gt-ac gt-f1">
|
||||
<svg-icon :name="repoIcon(repo)" :size="16" class-name="gt-mr-2"/>
|
||||
<div class="text gt-bold truncate gt-ml-1">{{ repo.full_name }}</div>
|
||||
<span v-if="repo.archived">
|
||||
<svg-icon name="octicon-archive" :size="16" class-name="gt-ml-2"/>
|
||||
</span>
|
||||
</div>
|
||||
<div class="text light grey gt-df gt-ac" v-if="isStarsEnabled">
|
||||
{{ repo.stars_count }}
|
||||
<svg-icon name="octicon-star" :size="16" class-name="gt-ml-2"/>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -4,8 +4,9 @@ import {attachTribute} from './tribute.js';
|
||||
import {createCommentEasyMDE, getAttachedEasyMDE} from './comp/EasyMDE.js';
|
||||
import {initEasyMDEImagePaste} from './comp/ImagePaste.js';
|
||||
import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js';
|
||||
import {initTooltip, showTemporaryTooltip} from '../modules/tippy.js';
|
||||
import {initTooltip, showTemporaryTooltip, createTippy} from '../modules/tippy.js';
|
||||
import {hideElem, showElem, toggleElem} from '../utils/dom.js';
|
||||
import {setFileFolding} from './file-fold.js';
|
||||
|
||||
const {appSubUrl, csrfToken} = window.config;
|
||||
|
||||
@ -437,17 +438,36 @@ export async function handleReply($el) {
|
||||
|
||||
export function initRepoPullRequestReview() {
|
||||
if (window.location.hash && window.location.hash.startsWith('#issuecomment-')) {
|
||||
// set scrollRestoration to 'manual' when there is a hash in url, so that the scroll position will not be remembered after refreshing
|
||||
if (window.history.scrollRestoration !== 'manual') {
|
||||
window.history.scrollRestoration = 'manual';
|
||||
}
|
||||
const commentDiv = $(window.location.hash);
|
||||
if (commentDiv) {
|
||||
// get the name of the parent id
|
||||
const groupID = commentDiv.closest('div[id^="code-comments-"]').attr('id');
|
||||
if (groupID && groupID.startsWith('code-comments-')) {
|
||||
const id = groupID.slice(14);
|
||||
const ancestorDiffBox = commentDiv.closest('.diff-file-box');
|
||||
// on pages like conversation, there is no diff header
|
||||
const diffHeader = ancestorDiffBox.find('.diff-file-header');
|
||||
// offset is for scrolling
|
||||
let offset = 30;
|
||||
if (diffHeader[0]) {
|
||||
offset += $('.diff-detail-box').outerHeight() + diffHeader.outerHeight();
|
||||
}
|
||||
$(`#show-outdated-${id}`).addClass('gt-hidden');
|
||||
$(`#code-comments-${id}`).removeClass('gt-hidden');
|
||||
$(`#code-preview-${id}`).removeClass('gt-hidden');
|
||||
$(`#hide-outdated-${id}`).removeClass('gt-hidden');
|
||||
commentDiv[0].scrollIntoView();
|
||||
// if the comment box is folded, expand it
|
||||
if (ancestorDiffBox.attr('data-folded') && ancestorDiffBox.attr('data-folded') === 'true') {
|
||||
setFileFolding(ancestorDiffBox[0], ancestorDiffBox.find('.fold-file')[0], false);
|
||||
}
|
||||
window.scrollTo({
|
||||
top: commentDiv.offset().top - offset,
|
||||
behavior: 'instant'
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -492,12 +512,23 @@ export function initRepoPullRequestReview() {
|
||||
return;
|
||||
}
|
||||
|
||||
$('.js-btn-review').on('click', function (e) {
|
||||
const $reviewBtn = $('.js-btn-review');
|
||||
const $panel = $reviewBtn.parent().find('.review-box-panel');
|
||||
const $closeBtn = $panel.find('.close');
|
||||
|
||||
const tippy = createTippy($reviewBtn[0], {
|
||||
content: $panel[0],
|
||||
placement: 'bottom',
|
||||
trigger: 'click',
|
||||
role: 'menu',
|
||||
maxWidth: 'none',
|
||||
interactive: true,
|
||||
hideOnClick: true,
|
||||
});
|
||||
|
||||
$closeBtn.on('click', (e) => {
|
||||
e.preventDefault();
|
||||
toggleElem($(this).parent().find('.review-box-panel'));
|
||||
}).parent().find('.review-box-panel .close').on('click', function (e) {
|
||||
e.preventDefault();
|
||||
hideElem($(this).closest('.review-box-panel'));
|
||||
tippy.hide();
|
||||
});
|
||||
|
||||
$(document).on('click', 'a.add-code-comment', async function (e) {
|
||||
|
@ -11,8 +11,8 @@ import webpack from 'webpack';
|
||||
import {fileURLToPath} from 'node:url';
|
||||
import {readFileSync} from 'node:fs';
|
||||
|
||||
const {ESBuildMinifyPlugin} = EsBuildLoader;
|
||||
const {SourceMapDevToolPlugin} = webpack;
|
||||
const {EsbuildPlugin} = EsBuildLoader;
|
||||
const {SourceMapDevToolPlugin, DefinePlugin} = webpack;
|
||||
const formatLicenseText = (licenseText) => wrapAnsi(licenseText || '', 80).trim();
|
||||
|
||||
const glob = (pattern) => fastGlob.sync(pattern, {
|
||||
@ -90,7 +90,7 @@ export default {
|
||||
optimization: {
|
||||
minimize: isProduction,
|
||||
minimizer: [
|
||||
new ESBuildMinifyPlugin({
|
||||
new EsbuildPlugin({
|
||||
target: 'es2015',
|
||||
minify: true,
|
||||
css: true,
|
||||
@ -130,7 +130,8 @@ export default {
|
||||
{
|
||||
loader: 'esbuild-loader',
|
||||
options: {
|
||||
target: 'es2015'
|
||||
loader: 'js',
|
||||
target: 'es2015',
|
||||
},
|
||||
},
|
||||
],
|
||||
@ -173,7 +174,7 @@ export default {
|
||||
],
|
||||
},
|
||||
plugins: [
|
||||
new webpack.DefinePlugin({
|
||||
new DefinePlugin({
|
||||
__VUE_OPTIONS_API__: true, // at the moment, many Vue components still use the Vue Options API
|
||||
__VUE_PROD_DEVTOOLS__: false, // do not enable devtools support in production
|
||||
}),
|
||||
|