2
0
Files
logikonline fa22455cad
All checks were successful
Build and Release / Create Release (push) Has been skipped
Build and Release / Unit Tests (push) Successful in 3m20s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m5s
Build and Release / Lint (push) Successful in 5m16s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been skipped
Build and Release / Build Binary (linux/arm64) (push) Has been skipped
feat(packages): display global package url in settings
Show the global package URL with copy button when global access is enabled. Add locale key for the URL label.
2026-01-25 22:15:57 -05:00

136 lines
5.6 KiB
Handlebars

{{template "base/head" .}}
<div role="main" aria-label="{{.Title}}" class="page-content package settings options{{if .ContextUser.IsOrganization}} organization{{end}}">
{{if .ContextUser.IsOrganization}}
{{template "org/header" .}}
{{else}}
{{template "shared/user/org_profile_avatar" .}}
{{end}}
<div class="ui container">
{{if not .ContextUser.IsOrganization}}
{{template "user/overview/header" .}}
{{end}}
{{template "base/alert" .}}
<p><a href="{{.PackageDescriptor.VersionWebLink}}">{{.PackageDescriptor.Package.Name}} ({{.PackageDescriptor.Version.Version}})</a> / <strong>{{ctx.Locale.Tr "repo.settings"}}</strong></p>
<h4 class="ui top attached header">
{{ctx.Locale.Tr "packages.settings.link"}}
</h4>
<div class="ui attached segment">
<p>{{ctx.Locale.Tr "packages.settings.link.description"}}</p>
<form class="ui form form-fetch-action ignore-dirty flex-text-block" action="{{.Link}}" method="post">
<input type="hidden" name="action" value="link">
<div data-global-init="initSearchRepoBox" class="ui search" data-uid="{{.PackageDescriptor.Owner.ID}}">
<div class="ui input">
<input class="prompt" name="repo_name" value="{{.LinkedRepoName}}" placeholder="{{ctx.Locale.Tr "search.repo_kind"}}" autocomplete="off">
</div>
</div>
<button class="ui primary button">{{ctx.Locale.Tr "packages.settings.link.button"}}</button>
</form>
</div>
{{if .IsAdmin}}
<h4 class="ui top attached header">
{{ctx.Locale.Tr "packages.settings.global_access"}}
</h4>
<div class="ui attached segment">
<p>{{ctx.Locale.Tr "packages.settings.global_access.description"}}</p>
{{if .PackageDescriptor.Package.IsGlobal}}
<div class="ui info message">
<div class="tw-flex tw-items-center tw-gap-2">
{{svg "octicon-link" 16}}
<span>{{ctx.Locale.Tr "packages.settings.global_access.url"}}:</span>
<code class="global-package-url">{{AppUrl}}api/packages/_/{{.PackageDescriptor.Package.Type}}/</code>
<button class="ui mini basic icon button" aria-label="{{ctx.Locale.Tr "copy"}}" data-clipboard-text="{{AppUrl}}api/packages/_/{{.PackageDescriptor.Package.Type}}/">
{{svg "octicon-copy" 14}}
</button>
</div>
</div>
{{end}}
<form class="ui form" action="{{.Link}}" method="post">
<input type="hidden" name="action" value="global">
<div class="field">
<div class="ui checkbox">
<input type="checkbox" name="is_global" {{if .PackageDescriptor.Package.IsGlobal}}checked{{end}}>
<label>{{ctx.Locale.Tr "packages.settings.global_access.enable"}}</label>
</div>
</div>
<p class="help">{{ctx.Locale.Tr "packages.settings.global_access.help"}}</p>
<button class="ui primary button">{{ctx.Locale.Tr "save"}}</button>
</form>
</div>
{{end}}
<h4 class="ui top attached error header">
{{ctx.Locale.Tr "repo.settings.danger_zone"}}
</h4>
<div class="ui attached error danger segment">
<div class="flex-list">
<div class="flex-item tw-items-center">
<div class="flex-item-main">
<div class="flex-item-title">{{ctx.Locale.Tr "packages.visibility"}}</div>
{{if .PackageDescriptor.Package.IsPrivate}}
<div class="flex-item-body">{{ctx.Locale.Tr "packages.settings.visibility.public.text"}}</div>
{{else}}
<div class="flex-item-body">{{ctx.Locale.Tr "packages.settings.visibility.private.text"}}</div>
{{end}}
</div>
<div class="flex-item-trailing">
<button class="ui basic red show-modal button" data-modal="#visibility-package-modal">
{{if .PackageDescriptor.Package.IsPrivate}}
{{ctx.Locale.Tr "packages.settings.visibility.public.button"}}
{{else}}
{{ctx.Locale.Tr "packages.settings.visibility.private.button"}}
{{end}}
</button>
</div>
</div>
<div class="flex-item">
<div class="flex-item-main">
<div class="flex-item-title">{{ctx.Locale.Tr "packages.settings.delete"}}</div>
<div class="flex-item-body">{{ctx.Locale.Tr "packages.settings.delete.description"}}</div>
</div>
<div class="flex-item-trailing">
<button class="ui basic red show-modal button" data-modal="#delete-package-modal">{{ctx.Locale.Tr "packages.settings.delete"}}</button>
</div>
</div>
</div>
</div>
<div class="ui g-modal-confirm modal" id="visibility-package-modal">
<div class="header">
{{ctx.Locale.Tr "packages.visibility"}}
</div>
<div class="content">
{{if .PackageDescriptor.Package.IsPrivate}}
<p>{{ctx.Locale.Tr "packages.settings.visibility.public.bullet_title"}}</p>
<ul>
<li>{{ctx.Locale.Tr "packages.settings.visibility.public.bullet_one"}}</li>
</ul>
{{else}}
<p>{{ctx.Locale.Tr "packages.settings.visibility.private.bullet_title"}}</p>
<ul>
<li>{{ctx.Locale.Tr "packages.settings.visibility.private.bullet_one"}}</li>
</ul>
{{end}}
</div>
<form action="{{.Link}}" method="post">
<input type="hidden" name="action" value="visibility">
{{template "base/modal_actions_confirm" .}}
</form>
</div>
<div class="ui tiny modal" id="delete-package-modal">
<div class="header">
{{ctx.Locale.Tr "packages.settings.delete"}}
</div>
<div class="content">
<div class="ui warning message tw-break-anywhere">
{{ctx.Locale.Tr "packages.settings.delete.notice" .PackageDescriptor.Package.Name .PackageDescriptor.Version.Version}}
</div>
<form class="ui form" action="{{.Link}}" method="post">
<input type="hidden" name="action" value="delete">
{{template "base/modal_actions_confirm" .}}
</form>
</div>
</div>
</div>
</div>
{{template "base/footer" .}}