loading up the forgejo repo on tangled to test page performance
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Migrate `gt-hidden` to `tw-hidden` (#30046)

We have to define this one in helpers.css because tailwind only
generates a single class but certain things rely on this being
double-class. Command ran:

```sh
perl -p -i -e 's#gt-hidden#tw-hidden#g' web_src/js/**/* templates/**/* models/**/* web_src/css/**/*

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
(cherry picked from commit ec3d467f15a683b305ac165c3eba6683628dcb25)

Conflicts:
templates/install.tmpl
templates/repo/diff/conversation.tmpl
templates/repo/issue/view_content/conversation.tmpl
templates/repo/issue/view_content/sidebar.tmpl
templates/repo/issue/view_title.tmpl

resolved by prefering Forgejo version and applying the
commands to all files

authored by

silverwind
wxiaoguang
and committed by
Earl Warren
5016bc5d e28f4328

+195 -192
+1 -1
docs/content/contributing/guidelines-frontend.en-us.md
··· 118 118 ### Show/Hide Elements 119 119 120 120 * Vue components are recommended to use `v-if` and `v-show` to show/hide elements. 121 - * Go template code should use Gitea's `.gt-hidden` and `showElem()/hideElem()/toggleElem()`, see more details in `.gt-hidden`'s comment. 121 + * Go template code should use `.tw-hidden` and `showElem()/hideElem()/toggleElem()`, see more details in `.tw-hidden`'s comment. 122 122 123 123 ### Styles and Attributes in Go HTML Template 124 124
+1 -1
docs/content/contributing/guidelines-frontend.zh-cn.md
··· 117 117 ### 显示/隐藏元素 118 118 119 119 * 推荐在Vue组件中使用`v-if`和`v-show`来显示/隐藏元素。 120 - * Go 模板代码应使用 Gitea 的 `.gt-hidden` 和 `showElem()/hideElem()/toggleElem()` 来显示/隐藏元素,请参阅`.gt-hidden`的注释以获取更多详细信息。 120 + * Go 模板代码应使用 `.tw-hidden` 和 `showElem()/hideElem()/toggleElem()` 来显示/隐藏元素,请参阅`.tw-hidden`的注释以获取更多详细信息。 121 121 122 122 ### Go HTML 模板中的样式和属性 123 123
+2
tailwind.config.js
··· 41 41 // classes that don't work without CSS variables from "@tailwind base" which we don't use 42 42 'transform', 'shadow', 'ring', 'blur', 'grayscale', 'invert', '!invert', 'filter', '!filter', 43 43 'backdrop-filter', 44 + // we use double-class tw-hidden defined in web_src/css/helpers.css for increased specificity 45 + 'hidden', 44 46 // unneeded classes 45 47 '[-a-zA-Z:0-9_.]', 46 48 ],
+4 -4
templates/admin/auth/edit.tmpl
··· 42 42 <label for="port">{{ctx.Locale.Tr "admin.auths.port"}}</label> 43 43 <input id="port" name="port" value="{{$cfg.Port}}" placeholder="636" required> 44 44 </div> 45 - <div class="has-tls inline field {{if not .HasTLS}}gt-hidden{{end}}"> 45 + <div class="has-tls inline field {{if not .HasTLS}}tw-hidden{{end}}"> 46 46 <div class="ui checkbox"> 47 47 <label><strong>{{ctx.Locale.Tr "admin.auths.skip_tls_verify"}}</strong></label> 48 48 <input name="skip_verify" type="checkbox" {{if .Source.SkipVerify}}checked{{end}}> ··· 113 113 <input type="checkbox" name="groups_enabled" class="js-ldap-group-toggle" {{if $cfg.GroupsEnabled}}checked{{end}}> 114 114 </div> 115 115 </div> 116 - <div id="ldap-group-options" class="ui segment secondary {{if not $cfg.GroupsEnabled}}gt-hidden{{end}}"> 116 + <div id="ldap-group-options" class="ui segment secondary {{if not $cfg.GroupsEnabled}}tw-hidden{{end}}"> 117 117 <div class="field"> 118 118 <label>{{ctx.Locale.Tr "admin.auths.group_search_base"}}</label> 119 119 <input name="group_dn" value="{{$cfg.GroupDN}}" placeholder="ou=group,dc=mydomain,dc=com"> ··· 148 148 <input id="use_paged_search" name="use_paged_search" type="checkbox" {{if $cfg.UsePagedSearch}}checked{{end}}> 149 149 </div> 150 150 </div> 151 - <div class="field required search-page-size{{if not $cfg.UsePagedSearch}} gt-hidden{{end}}"> 151 + <div class="field required search-page-size{{if not $cfg.UsePagedSearch}} tw-hidden{{end}}"> 152 152 <label for="search_page_size">{{ctx.Locale.Tr "admin.auths.search_page_size"}}</label> 153 153 <input id="search_page_size" name="search_page_size" value="{{if $cfg.UsePagedSearch}}{{$cfg.SearchPageSize}}{{end}}"> 154 154 </div> ··· 205 205 </div> 206 206 <p class="help">{{ctx.Locale.Tr "admin.auths.force_smtps_helper"}}</p> 207 207 </div> 208 - <div class="has-tls inline field {{if not .HasTLS}}gt-hidden{{end}}"> 208 + <div class="has-tls inline field {{if not .HasTLS}}tw-hidden{{end}}"> 209 209 <div class="ui checkbox"> 210 210 <label><strong>{{ctx.Locale.Tr "admin.auths.skip_tls_verify"}}</strong></label> 211 211 <input name="skip_verify" type="checkbox" {{if $cfg.SkipVerify}}checked{{end}}>
+3 -3
templates/admin/auth/new.tmpl
··· 33 33 {{template "admin/auth/source/smtp" .}} 34 34 35 35 <!-- PAM --> 36 - <div class="pam required field {{if not (eq .type 4)}}gt-hidden{{end}}"> 36 + <div class="pam required field {{if not (eq .type 4)}}tw-hidden{{end}}"> 37 37 <label for="pam_service_name">{{ctx.Locale.Tr "admin.auths.pam_service_name"}}</label> 38 38 <input id="pam_service_name" name="pam_service_name" value="{{.pam_service_name}}"> 39 39 <label for="pam_email_domain">{{ctx.Locale.Tr "admin.auths.pam_email_domain"}}</label> 40 40 <input id="pam_email_domain" name="pam_email_domain" value="{{.pam_email_domain}}"> 41 41 </div> 42 - <div class="pam optional field {{if not (eq .type 4)}}gt-hidden{{end}}"> 42 + <div class="pam optional field {{if not (eq .type 4)}}tw-hidden{{end}}"> 43 43 <div class="ui checkbox"> 44 44 <label for="skip_local_two_fa"><strong>{{ctx.Locale.Tr "admin.auths.skip_local_two_fa"}}</strong></label> 45 45 <input id="skip_local_two_fa" name="skip_local_two_fa" type="checkbox" {{if .skip_local_two_fa}}checked{{end}}> ··· 59 59 <input name="attributes_in_bind" type="checkbox" {{if .attributes_in_bind}}checked{{end}}> 60 60 </div> 61 61 </div> 62 - <div class="ldap inline field {{if not (eq .type 2)}}gt-hidden{{end}}"> 62 + <div class="ldap inline field {{if not (eq .type 2)}}tw-hidden{{end}}"> 63 63 <div class="ui checkbox"> 64 64 <label><strong>{{ctx.Locale.Tr "admin.auths.syncenabled"}}</strong></label> 65 65 <input name="is_sync_enabled" type="checkbox" {{if .is_sync_enabled}}checked{{end}}>
+7 -7
templates/admin/auth/source/ldap.tmpl
··· 1 - <div class="ldap dldap field {{if not (or (eq .type 2) (eq .type 5))}}gt-hidden{{end}}"> 1 + <div class="ldap dldap field {{if not (or (eq .type 2) (eq .type 5))}}tw-hidden{{end}}"> 2 2 <div class="inline required field {{if .Err_SecurityProtocol}}error{{end}}"> 3 3 <label>{{ctx.Locale.Tr "admin.auths.security_protocol"}}</label> 4 4 <div class="ui selection security-protocol dropdown"> ··· 20 20 <label for="port">{{ctx.Locale.Tr "admin.auths.port"}}</label> 21 21 <input id="port" name="port" value="{{.port}}" placeholder="636"> 22 22 </div> 23 - <div class="has-tls inline field {{if not .HasTLS}}gt-hidden{{end}}"> 23 + <div class="has-tls inline field {{if not .HasTLS}}tw-hidden{{end}}"> 24 24 <div class="ui checkbox"> 25 25 <label><strong>{{ctx.Locale.Tr "admin.auths.skip_tls_verify"}}</strong></label> 26 26 <input name="skip_verify" type="checkbox" {{if .skip_verify}}checked{{end}}> 27 27 </div> 28 28 </div> 29 - <div class="ldap field {{if not (eq .type 2)}}gt-hidden{{end}}"> 29 + <div class="ldap field {{if not (eq .type 2)}}tw-hidden{{end}}"> 30 30 <label for="bind_dn">{{ctx.Locale.Tr "admin.auths.bind_dn"}}</label> 31 31 <input id="bind_dn" name="bind_dn" value="{{.bind_dn}}" placeholder="cn=Search,dc=mydomain,dc=com"> 32 32 </div> 33 - <div class="ldap field {{if not (eq .type 2)}}gt-hidden{{end}}"> 33 + <div class="ldap field {{if not (eq .type 2)}}tw-hidden{{end}}"> 34 34 <label for="bind_password">{{ctx.Locale.Tr "admin.auths.bind_password"}}</label> 35 35 <input id="bind_password" name="bind_password" type="password" autocomplete="off" value="{{.bind_password}}"> 36 36 </div> ··· 38 38 <label for="user_base">{{ctx.Locale.Tr "admin.auths.user_base"}}</label> 39 39 <input id="user_base" name="user_base" value="{{.user_base}}" placeholder="ou=Users,dc=mydomain,dc=com"> 40 40 </div> 41 - <div class="dldap required field {{if not (eq .type 5)}}gt-hidden{{end}}"> 41 + <div class="dldap required field {{if not (eq .type 5)}}tw-hidden{{end}}"> 42 42 <label for="user_dn">{{ctx.Locale.Tr "admin.auths.user_dn"}}</label> 43 43 <input id="user_dn" name="user_dn" value="{{.user_dn}}" placeholder="uid=%s,ou=Users,dc=mydomain,dc=com"> 44 44 </div> ··· 115 115 </div> 116 116 <!-- ldap group end --> 117 117 118 - <div class="ldap inline field {{if not (eq .type 2)}}gt-hidden{{end}}"> 118 + <div class="ldap inline field {{if not (eq .type 2)}}tw-hidden{{end}}"> 119 119 <div class="ui checkbox"> 120 120 <label for="use_paged_search"><strong>{{ctx.Locale.Tr "admin.auths.use_paged_search"}}</strong></label> 121 121 <input id="use_paged_search" name="use_paged_search" class="use-paged-search" type="checkbox" {{if .use_paged_search}}checked{{end}}> 122 122 </div> 123 123 </div> 124 - <div class="ldap field search-page-size required {{if or (not (eq .type 2)) (not .use_paged_search)}}gt-hidden{{end}}"> 124 + <div class="ldap field search-page-size required {{if or (not (eq .type 2)) (not .use_paged_search)}}tw-hidden{{end}}"> 125 125 <label for="search_page_size">{{ctx.Locale.Tr "admin.auths.search_page_size"}}</label> 126 126 <input id="search_page_size" name="search_page_size" value="{{.search_page_size}}"> 127 127 </div>
+1 -1
templates/admin/auth/source/oauth.tmpl
··· 1 - <div class="oauth2 field {{if not (eq .type 6)}}gt-hidden{{end}}"> 1 + <div class="oauth2 field {{if not (eq .type 6)}}tw-hidden{{end}}"> 2 2 <div class="inline required field"> 3 3 <label>{{ctx.Locale.Tr "admin.auths.oauth2_provider"}}</label> 4 4 <div class="ui selection type dropdown">
+1 -1
templates/admin/auth/source/smtp.tmpl
··· 1 - <div class="smtp field {{if not (eq .type 3)}}gt-hidden{{end}}"> 1 + <div class="smtp field {{if not (eq .type 3)}}tw-hidden{{end}}"> 2 2 <div class="inline required field"> 3 3 <label>{{ctx.Locale.Tr "admin.auths.smtp_auth"}}</label> 4 4 <div class="ui selection type dropdown">
+1 -1
templates/admin/auth/source/sspi.tmpl
··· 1 - <div class="sspi field {{if not (eq .type 7)}}gt-hidden{{end}}"> 1 + <div class="sspi field {{if not (eq .type 7)}}tw-hidden{{end}}"> 2 2 <div class="field"> 3 3 <div class="ui checkbox"> 4 4 <label for="sspi_auto_create_users"><strong>{{ctx.Locale.Tr "admin.auths.sspi_auto_create_users"}}</strong></label>
+4 -4
templates/admin/user/edit.tmpl
··· 53 53 </div> 54 54 </div> 55 55 56 - <div class="required non-local field {{if .Err_LoginName}}error{{end}} {{if eq .User.LoginSource 0}}gt-hidden{{end}}"> 56 + <div class="required non-local field {{if .Err_LoginName}}error{{end}} {{if eq .User.LoginSource 0}}tw-hidden{{end}}"> 57 57 <label for="login_name">{{ctx.Locale.Tr "admin.users.auth_login_name"}}</label> 58 58 <input id="login_name" name="login_name" value="{{.User.LoginName}}" autofocus> 59 59 </div> ··· 65 65 <label for="email">{{ctx.Locale.Tr "email"}}</label> 66 66 <input id="email" name="email" type="email" value="{{.User.Email}}" autofocus required> 67 67 </div> 68 - <div class="local field {{if .Err_Password}}error{{end}} {{if not (or (.User.IsLocal) (.User.IsOAuth2))}}gt-hidden{{end}}"> 68 + <div class="local field {{if .Err_Password}}error{{end}} {{if not (or (.User.IsLocal) (.User.IsOAuth2))}}tw-hidden{{end}}"> 69 69 <label for="password">{{ctx.Locale.Tr "password"}}</label> 70 70 <input id="password" name="password" type="password" autocomplete="new-password"> 71 71 <p class="help">{{ctx.Locale.Tr "admin.users.password_helper"}}</p> ··· 128 128 <input name="restricted" type="checkbox" {{if .User.IsRestricted}}checked{{end}}> 129 129 </div> 130 130 </div> 131 - <div class="inline field {{if DisableGitHooks}}gt-hidden{{end}}"> 131 + <div class="inline field {{if DisableGitHooks}}tw-hidden{{end}}"> 132 132 <div class="ui checkbox" data-tooltip-content="{{ctx.Locale.Tr "admin.users.allow_git_hook_tooltip"}}"> 133 133 <label><strong>{{ctx.Locale.Tr "admin.users.allow_git_hook"}}</strong></label> 134 134 <input name="allow_git_hook" type="checkbox" {{if .User.CanEditGitHook}}checked{{end}} {{if DisableGitHooks}}disabled{{end}}> 135 135 </div> 136 136 </div> 137 - <div class="inline field {{if or (DisableImportLocal) (.DisableMigrations)}}gt-hidden{{end}}"> 137 + <div class="inline field {{if or (DisableImportLocal) (.DisableMigrations)}}tw-hidden{{end}}"> 138 138 <div class="ui checkbox"> 139 139 <label><strong>{{ctx.Locale.Tr "admin.users.allow_import_local"}}</strong></label> 140 140 <input name="allow_import_local" type="checkbox" {{if .User.CanImportLocal}}checked{{end}} {{if DisableImportLocal}}disabled{{end}}>
+3 -3
templates/admin/user/new.tmpl
··· 47 47 </div> 48 48 </div> 49 49 50 - <div class="required non-local field {{if .Err_LoginName}}error{{end}} {{if eq .login_type "0-0"}}gt-hidden{{end}}"> 50 + <div class="required non-local field {{if .Err_LoginName}}error{{end}} {{if eq .login_type "0-0"}}tw-hidden{{end}}"> 51 51 <label for="login_name">{{ctx.Locale.Tr "admin.users.auth_login_name"}}</label> 52 52 <input id="login_name" name="login_name" value="{{.login_name}}"> 53 53 </div> ··· 59 59 <label for="email">{{ctx.Locale.Tr "email"}}</label> 60 60 <input id="email" name="email" type="email" value="{{.email}}" required> 61 61 </div> 62 - <div class="required local field {{if .Err_Password}}error{{end}} {{if not (eq .login_type "0-0")}}gt-hidden{{end}}"> 62 + <div class="required local field {{if .Err_Password}}error{{end}} {{if not (eq .login_type "0-0")}}tw-hidden{{end}}"> 63 63 <label for="password">{{ctx.Locale.Tr "password"}}</label> 64 64 <input id="password" name="password" type="password" autocomplete="new-password" value="{{.password}}" {{if eq .login_type "0-0"}}required{{end}}> 65 65 </div> 66 66 67 - <div class="inline field local {{if ne .login_type "0-0"}}gt-hidden{{end}}"> 67 + <div class="inline field local {{if ne .login_type "0-0"}}tw-hidden{{end}}"> 68 68 <div class="ui checkbox"> 69 69 <label><strong>{{ctx.Locale.Tr "auth.allow_password_change"}}</strong></label> 70 70 <input name="must_change_password" type="checkbox" checked>
+3 -3
templates/base/head_navbar.tmpl
··· 16 16 <a id="mobile-notifications-icon" class="item tw-w-auto tw-p-2" href="{{AppSubUrl}}/notifications" data-tooltip-content="{{ctx.Locale.Tr "notifications"}}" aria-label="{{ctx.Locale.Tr "notifications"}}"> 17 17 <div class="tw-relative"> 18 18 {{svg "octicon-bell"}} 19 - <span class="notification_count{{if not $notificationUnreadCount}} gt-hidden{{end}}">{{$notificationUnreadCount}}</span> 19 + <span class="notification_count{{if not $notificationUnreadCount}} tw-hidden{{end}}">{{$notificationUnreadCount}}</span> 20 20 </div> 21 21 </a> 22 22 {{end}} ··· 75 75 </div><!-- end dropdown avatar menu --> 76 76 {{else if .IsSigned}} 77 77 {{if EnableTimetracking}} 78 - <a class="active-stopwatch-trigger item tw-mx-0{{if not .ActiveStopwatch}} gt-hidden{{end}}" href="{{.ActiveStopwatch.IssueLink}}" title="{{ctx.Locale.Tr "active_stopwatch"}}"> 78 + <a class="active-stopwatch-trigger item tw-mx-0{{if not .ActiveStopwatch}} tw-hidden{{end}}" href="{{.ActiveStopwatch.IssueLink}}" title="{{ctx.Locale.Tr "active_stopwatch"}}"> 79 79 <div class="tw-relative"> 80 80 {{svg "octicon-stopwatch"}} 81 81 <span class="header-stopwatch-dot"></span> ··· 114 114 <a class="item not-mobile tw-mx-0" href="{{AppSubUrl}}/notifications" data-tooltip-content="{{ctx.Locale.Tr "notifications"}}" aria-label="{{ctx.Locale.Tr "notifications"}}"> 115 115 <div class="tw-relative"> 116 116 {{svg "octicon-bell"}} 117 - <span class="notification_count{{if not $notificationUnreadCount}} gt-hidden{{end}}">{{$notificationUnreadCount}}</span> 117 + <span class="notification_count{{if not $notificationUnreadCount}} tw-hidden{{end}}">{{$notificationUnreadCount}}</span> 118 118 </div> 119 119 </a> 120 120
+4 -4
templates/install.tmpl
··· 28 28 </div> 29 29 </div> 30 30 31 - <div class="tw-mt-4 gt-hidden" data-db-setting-for="common-host"> 31 + <div class="tw-mt-4 tw-hidden" data-db-setting-for="common-host"> 32 32 <div class="inline required field {{if .Err_DbSetting}}error{{end}}"> 33 33 <label for="db_host">{{ctx.Locale.Tr "install.host"}}</label> 34 34 <input id="db_host" name="db_host" value="{{.db_host}}"> ··· 47 47 </div> 48 48 </div> 49 49 50 - <div class="tw-mt-4 gt-hidden" data-db-setting-for="postgres"> 50 + <div class="tw-mt-4 tw-hidden" data-db-setting-for="postgres"> 51 51 <div class="inline required field"> 52 52 <label>{{ctx.Locale.Tr "install.ssl_mode"}}</label> 53 53 <div class="ui selection database type dropdown"> ··· 68 68 </div> 69 69 </div> 70 70 71 - <div class="tw-mt-4 gt-hidden" data-db-setting-for="sqlite3"> 71 + <div class="tw-mt-4 tw-hidden" data-db-setting-for="sqlite3"> 72 72 <div class="inline required field {{if or .Err_DbPath .Err_DbSetting}}error{{end}}"> 73 73 <label for="db_path">{{ctx.Locale.Tr "install.path"}}</label> 74 74 <input id="db_path" name="db_path" value="{{.db_path}}"> ··· 347 347 </div> 348 348 </div> 349 349 </div> 350 - <img class="gt-hidden" src="{{AssetUrlPrefix}}/img/forgejo-loading.svg" width="256" height="256"> 350 + <img class="tw-hidden" src="{{AssetUrlPrefix}}/img/forgejo-loading.svg" width="256" height="256"> 351 351 {{template "base/footer" .}}
+1 -1
templates/org/settings/options.tmpl
··· 8 8 {{.CsrfTokenHtml}} 9 9 <div class="required field {{if .Err_Name}}error{{end}}"> 10 10 <label for="org_name">{{ctx.Locale.Tr "org.org_name_holder"}} 11 - <span class="text red gt-hidden" id="org-name-change-prompt"> 11 + <span class="text red tw-hidden" id="org-name-change-prompt"> 12 12 <br>{{ctx.Locale.Tr "org.settings.change_orgname_prompt"}}<br>{{ctx.Locale.Tr "org.settings.change_orgname_redirect_prompt"}} 13 13 </span> 14 14 </label>
+1 -1
templates/org/team/new.tmpl
··· 71 71 </div> 72 72 <div class="divider"></div> 73 73 74 - <div class="team-units required grouped field {{if eq .Team.AccessMode 3}}gt-hidden{{end}}"> 74 + <div class="team-units required grouped field {{if eq .Team.AccessMode 3}}tw-hidden{{end}}"> 75 75 <label>{{ctx.Locale.Tr "org.team_unit_desc"}}</label> 76 76 <table class="ui celled table"> 77 77 <thead>
+1 -1
templates/repo/blame.tmpl
··· 24 24 <a class="ui tiny button" href="{{.RepoLink}}/src/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">{{ctx.Locale.Tr "repo.normal_view"}}</a> 25 25 <a class="ui tiny button" href="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">{{ctx.Locale.Tr "repo.file_history"}}</a> 26 26 <button class="ui tiny button unescape-button">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</button> 27 - <button class="ui tiny button escape-button gt-hidden">{{ctx.Locale.Tr "repo.escape_control_characters"}}</button> 27 + <button class="ui tiny button escape-button tw-hidden">{{ctx.Locale.Tr "repo.escape_control_characters"}}</button> 28 28 </div> 29 29 </div> 30 30 </h4>
+1 -1
templates/repo/commit_load_branches_and_tags.tmpl
··· 4 4 data-fetch-url="{{.RepoLink}}/commit/{{.CommitID}}/load-branches-and-tags" 5 5 data-tooltip-content="{{ctx.Locale.Tr "repo.commit.load_referencing_branches_and_tags"}}" 6 6 >...</button> 7 - <div class="branch-and-tag-detail gt-hidden"> 7 + <div class="branch-and-tag-detail tw-hidden"> 8 8 <div class="divider"></div> 9 9 <div>{{ctx.Locale.Tr "repo.commit.contained_in"}}</div> 10 10 <div class="tw-flex tw-mt-2">
+1 -1
templates/repo/commits_list.tmpl
··· 68 68 {{end}} 69 69 {{template "repo/commit_statuses" dict "Status" .Status "Statuses" .Statuses}} 70 70 {{if IsMultilineCommitMessage .Message}} 71 - <pre class="commit-body gt-hidden">{{RenderCommitBody $.Context .Message ($.Repository.ComposeMetas ctx)}}</pre> 71 + <pre class="commit-body tw-hidden">{{RenderCommitBody $.Context .Message ($.Repository.ComposeMetas ctx)}}</pre> 72 72 {{end}} 73 73 </td> 74 74 {{if .Committer}}
+1 -1
templates/repo/commits_list_small.tmpl
··· 43 43 <button class="ui button js-toggle-commit-body ellipsis-button" aria-expanded="false">...</button> 44 44 {{end}} 45 45 {{if IsMultilineCommitMessage .Message}} 46 - <pre class="commit-body gt-hidden">{{RenderCommitBody $.root.Context .Message ($.comment.Issue.PullRequest.BaseRepo.ComposeMetas ctx)}}</pre> 46 + <pre class="commit-body tw-hidden">{{RenderCommitBody $.root.Context .Message ($.comment.Issue.PullRequest.BaseRepo.ComposeMetas ctx)}}</pre> 47 47 {{end}} 48 48 </div> 49 49 {{end}}
+1 -1
templates/repo/create.tmpl
··· 73 73 </div> 74 74 </div> 75 75 76 - <div id="template_units" class="gt-hidden"> 76 + <div id="template_units" class="tw-hidden"> 77 77 <div class="inline field"> 78 78 <label>{{ctx.Locale.Tr "repo.template.items"}}</label> 79 79 <div class="ui checkbox">
+7 -7
templates/repo/diff/box.tmpl
··· 5 5 {{if $showFileTree}} 6 6 <button class="diff-toggle-file-tree-button not-mobile btn interact-fg" data-show-text="{{ctx.Locale.Tr "repo.diff.show_file_tree"}}" data-hide-text="{{ctx.Locale.Tr "repo.diff.hide_file_tree"}}"> 7 7 {{/* the icon meaning is reversed here, "octicon-sidebar-collapse" means show the file tree */}} 8 - {{svg "octicon-sidebar-collapse" 20 "icon gt-hidden"}} 9 - {{svg "octicon-sidebar-expand" 20 "icon gt-hidden"}} 8 + {{svg "octicon-sidebar-collapse" 20 "icon tw-hidden"}} 9 + {{svg "octicon-sidebar-expand" 20 "icon tw-hidden"}} 10 10 </button> 11 11 <script> 12 12 // Default to true if unset 13 13 const diffTreeVisible = localStorage?.getItem('diff_file_tree_visible') !== 'false'; 14 14 const diffTreeBtn = document.querySelector('.diff-toggle-file-tree-button'); 15 15 const diffTreeIcon = `.octicon-sidebar-${diffTreeVisible ? 'expand' : 'collapse'}`; 16 - diffTreeBtn.querySelector(diffTreeIcon).classList.remove('gt-hidden'); 16 + diffTreeBtn.querySelector(diffTreeIcon).classList.remove('tw-hidden'); 17 17 diffTreeBtn.setAttribute('data-tooltip-content', diffTreeBtn.getAttribute(diffTreeVisible ? 'data-hide-text' : 'data-show-text')); 18 18 </script> 19 19 {{end}} ··· 89 89 {{end}} 90 90 <div id="diff-container"> 91 91 {{if $showFileTree}} 92 - <div id="diff-file-tree" class="gt-hidden not-mobile"></div> 92 + <div id="diff-file-tree" class="tw-hidden not-mobile"></div> 93 93 <script> 94 - if (diffTreeVisible) document.getElementById('diff-file-tree').classList.remove('gt-hidden'); 94 + if (diffTreeVisible) document.getElementById('diff-file-tree').classList.remove('tw-hidden'); 95 95 </script> 96 96 {{end}} 97 97 {{if .DiffNotAvailable}} ··· 159 159 {{end}} 160 160 {{if not (or $file.IsIncomplete $file.IsBin $file.IsSubmodule)}} 161 161 <button class="ui basic tiny button unescape-button not-mobile">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</button> 162 - <button class="ui basic tiny button escape-button gt-hidden">{{ctx.Locale.Tr "repo.escape_control_characters"}}</button> 162 + <button class="ui basic tiny button escape-button tw-hidden">{{ctx.Locale.Tr "repo.escape_control_characters"}}</button> 163 163 {{end}} 164 164 {{if and (not $file.IsSubmodule) (not $.PageIsWiki)}} 165 165 {{if $file.IsDeleted}} ··· 179 179 </div> 180 180 </h4> 181 181 <div class="diff-file-body ui attached unstackable table segment" {{if and $file.IsViewed $.IsShowingAllCommits}}data-folded="true"{{end}}> 182 - <div id="diff-source-{{$file.NameHash}}" class="file-body file-code unicode-escaped code-diff{{if $.IsSplitStyle}} code-diff-split{{else}} code-diff-unified{{end}}{{if $showFileViewToggle}} gt-hidden{{end}}"> 182 + <div id="diff-source-{{$file.NameHash}}" class="file-body file-code unicode-escaped code-diff{{if $.IsSplitStyle}} code-diff-split{{else}} code-diff-unified{{end}}{{if $showFileViewToggle}} tw-hidden{{end}}"> 183 183 {{if or $file.IsIncomplete $file.IsBin}} 184 184 <div class="diff-file-body binary"> 185 185 {{if $file.IsIncomplete}}
+1 -1
templates/repo/diff/comment_form.tmpl
··· 1 1 {{if and $.root.SignedUserID (not $.Repository.IsArchived)}} 2 - <form class="ui form {{if $.hidden}}gt-hidden comment-form{{end}}" action="{{$.root.Issue.Link}}/files/reviews/comments" method="post"> 2 + <form class="ui form {{if $.hidden}}tw-hidden comment-form{{end}}" action="{{$.root.Issue.Link}}/files/reviews/comments" method="post"> 3 3 {{$.root.CsrfTokenHtml}} 4 4 <input type="hidden" name="origin" value="{{if $.root.PageIsPullFiles}}diff{{else}}timeline{{end}}"> 5 5 <input type="hidden" name="latest_commit_id" value="{{$.root.AfterCommitID}}">
+2 -2
templates/repo/diff/comments.tmpl
··· 60 60 <span class="no-content">{{ctx.Locale.Tr "repo.issues.no_content"}}</span> 61 61 {{end}} 62 62 </div> 63 - <div id="issuecomment-{{.ID}}-raw" class="raw-content gt-hidden">{{.Content}}</div> 64 - <div class="edit-content-zone gt-hidden" data-update-url="{{$.root.RepoLink}}/comments/{{.ID}}" data-context="{{$.root.RepoLink}}" data-attachment-url="{{$.root.RepoLink}}/comments/{{.ID}}/attachments"></div> 63 + <div id="issuecomment-{{.ID}}-raw" class="raw-content tw-hidden">{{.Content}}</div> 64 + <div class="edit-content-zone tw-hidden" data-update-url="{{$.root.RepoLink}}/comments/{{.ID}}" data-context="{{$.root.RepoLink}}" data-attachment-url="{{$.root.RepoLink}}/comments/{{.ID}}/attachments"></div> 65 65 {{if .Attachments}} 66 66 {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} 67 67 {{end}}
+6 -6
templates/repo/diff/compare.tmpl
··· 75 75 {{end}} 76 76 {{end}} 77 77 </div> 78 - <div class="scrolling menu reference-list-menu base-tag-list gt-hidden"> 78 + <div class="scrolling menu reference-list-menu base-tag-list tw-hidden"> 79 79 {{range .Tags}} 80 80 <div class="item {{if eq $.BaseBranch .}}selected{{end}}" data-url="{{$.RepoLink}}/compare/{{PathEscapeSegments .}}{{$.CompareSeparator}}{{if not $.PullRequestCtx.SameRepo}}{{PathEscape $.HeadUser.Name}}/{{PathEscape $.HeadRepo.Name}}:{{end}}{{PathEscapeSegments $.HeadBranch}}">{{$BaseCompareName}}:{{.}}</div> 81 81 {{end}} ··· 144 144 {{end}} 145 145 {{end}} 146 146 </div> 147 - <div class="scrolling menu reference-list-menu head-tag-list gt-hidden"> 147 + <div class="scrolling menu reference-list-menu head-tag-list tw-hidden"> 148 148 {{range .HeadTags}} 149 149 <div class="{{if eq $.HeadBranch .}}selected{{end}} item" data-url="{{$.RepoLink}}/compare/{{PathEscapeSegments $.BaseBranch}}{{$.CompareSeparator}}{{if not $.PullRequestCtx.SameRepo}}{{PathEscape $.HeadUser.Name}}/{{PathEscape $.HeadRepo.Name}}:{{end}}{{PathEscapeSegments .}}">{{$HeadCompareName}}:{{.}}</div> 150 150 {{end}} ··· 171 171 {{if .IsNothingToCompare}} 172 172 {{if and $.IsSigned $.AllowEmptyPr (not .Repository.IsArchived) .PageIsComparePull}} 173 173 <div class="ui segment">{{ctx.Locale.Tr "repo.pulls.nothing_to_compare_and_allow_empty_pr"}}</div> 174 - <div class="ui info message show-form-container {{if .Flash}}gt-hidden{{end}}"> 174 + <div class="ui info message show-form-container {{if .Flash}}tw-hidden{{end}}"> 175 175 <button class="ui button primary show-form">{{ctx.Locale.Tr "repo.pulls.new"}}</button> 176 176 </div> 177 - <div class="pullrequest-form {{if not .Flash}}gt-hidden{{end}}"> 177 + <div class="pullrequest-form {{if not .Flash}}tw-hidden{{end}}"> 178 178 {{template "repo/issue/new_form" .}} 179 179 </div> 180 180 {{else if and .HeadIsBranch .BaseIsBranch}} ··· 204 204 </div> 205 205 {{else}} 206 206 {{if and $.IsSigned (not .Repository.IsArchived)}} 207 - <div class="ui info message show-form-container {{if .Flash}}gt-hidden{{end}}"> 207 + <div class="ui info message show-form-container {{if .Flash}}tw-hidden{{end}}"> 208 208 <button class="ui button primary show-form">{{ctx.Locale.Tr "repo.pulls.new"}}</button> 209 209 </div> 210 210 {{else if .Repository.IsArchived}} ··· 217 217 </div> 218 218 {{end}} 219 219 {{if $.IsSigned}} 220 - <div class="pullrequest-form {{if not .Flash}}gt-hidden{{end}}"> 220 + <div class="pullrequest-form {{if not .Flash}}tw-hidden{{end}}"> 221 221 {{template "repo/issue/new_form" .}} 222 222 </div> 223 223 {{end}}
+2 -2
templates/repo/diff/conversation.tmpl
··· 24 24 {{svg "octicon-unfold" 16 "tw-mr-2"}} 25 25 {{ctx.Locale.Tr "repo.issues.review.show_resolved"}} 26 26 </button> 27 - <button id="hide-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="ui tiny labeled button hide-outdated tw-flex tw-items-center gt-hidden"> 27 + <button id="hide-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="ui tiny labeled button hide-outdated tw-flex tw-items-center tw-hidden"> 28 28 {{svg "octicon-fold" 16 "tw-mr-2"}} 29 29 {{ctx.Locale.Tr "repo.issues.review.hide_resolved"}} 30 30 </button> 31 31 </div> 32 32 </div> 33 33 {{end}} 34 - <div id="code-comments-{{(index .comments 0).ID}}" class="field comment-code-cloud {{if $resolved}}gt-hidden{{end}}"> 34 + <div id="code-comments-{{(index .comments 0).ID}}" class="field comment-code-cloud {{if $resolved}}tw-hidden{{end}}"> 35 35 <div class="comment-list"> 36 36 <ui class="ui comments"> 37 37 {{template "repo/diff/comments" dict "root" $ "comments" .comments}}
+1 -1
templates/repo/editor/commit_form.tmpl
··· 57 57 </label> 58 58 </div> 59 59 </div> 60 - <div class="quick-pull-branch-name {{if not (eq .commit_choice "commit-to-new-branch")}}gt-hidden{{end}}"> 60 + <div class="quick-pull-branch-name {{if not (eq .commit_choice "commit-to-new-branch")}}tw-hidden{{end}}"> 61 61 <div class="new-branch-name-input field {{if .Err_NewBranchName}}error{{end}}"> 62 62 {{svg "octicon-git-branch"}} 63 63 <input type="text" name="new_branch_name" maxlength="100" value="{{.new_branch_name}}" class="input-contrast tw-mr-1 js-quick-pull-new-branch-name" placeholder="{{ctx.Locale.Tr "repo.editor.new_branch_name_desc"}}" {{if eq .commit_choice "commit-to-new-branch"}}required{{end}} title="{{ctx.Locale.Tr "repo.editor.new_branch_name"}}">
+1 -1
templates/repo/editor/edit.tmpl
··· 34 34 {{end}} 35 35 </div> 36 36 <div class="ui bottom attached active tab segment" data-tab="write"> 37 - <textarea id="edit_area" name="content" class="gt-hidden" data-id="repo-{{.Repository.Name}}-{{.TreePath}}" 37 + <textarea id="edit_area" name="content" class="tw-hidden" data-id="repo-{{.Repository.Name}}-{{.TreePath}}" 38 38 data-url="{{.Repository.Link}}/markup" 39 39 data-context="{{.RepoLink}}" 40 40 data-previewable-extensions="{{.PreviewableExtensions}}"
+1 -1
templates/repo/editor/patch.tmpl
··· 23 23 <a class="active item" data-tab="write">{{svg "octicon-code" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.editor.new_patch"}}</a> 24 24 </div> 25 25 <div class="ui bottom attached active tab segment" data-tab="write"> 26 - <textarea id="edit_area" name="content" class="gt-hidden" data-id="repo-{{.Repository.Name}}-patch" 26 + <textarea id="edit_area" name="content" class="tw-hidden" data-id="repo-{{.Repository.Name}}-patch" 27 27 data-context="{{.RepoLink}}" 28 28 data-line-wrap-extensions="{{.LineWrapExtensions}}"> 29 29 {{.FileContent}}</textarea>
+1 -1
templates/repo/find/files.tmpl
··· 13 13 <tbody> 14 14 </tbody> 15 15 </table> 16 - <div id="repo-find-file-no-result" class="ui row center tw-mt-8 gt-hidden"> 16 + <div id="repo-find-file-no-result" class="ui row center tw-mt-8 tw-hidden"> 17 17 <h3>{{ctx.Locale.Tr "repo.find_file.no_matching"}}</h3> 18 18 </div> 19 19 </div>
+1 -1
templates/repo/graph.tmpl
··· 50 50 </div> 51 51 </h2> 52 52 <div class="ui dividing"></div> 53 - <div class="is-loading tw-py-32 gt-hidden" id="loading-indicator"></div> 53 + <div class="is-loading tw-py-32 tw-hidden" id="loading-indicator"></div> 54 54 {{template "repo/graph/svgcontainer" .}} 55 55 {{template "repo/graph/commits" .}} 56 56 </div>
+1 -1
templates/repo/home.tmpl
··· 24 24 </div> 25 25 {{end}} 26 26 {{if and .Permission.IsAdmin (not .Repository.IsArchived)}} 27 - <div class="ui form gt-hidden tw-flex tw-flex-col tw-mt-4" id="topic_edit"> 27 + <div class="ui form tw-hidden tw-flex tw-flex-col tw-mt-4" id="topic_edit"> 28 28 <div class="field tw-flex-1 tw-mb-1"> 29 29 <div class="ui fluid multiple search selection dropdown tw-flex-wrap" data-text-count-prompt="{{ctx.Locale.Tr "repo.topic.count_prompt"}}" data-text-format-prompt="{{ctx.Locale.Tr "repo.topic.format_prompt"}}"> 30 30 <input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if Eval $i "+" 1 "<" (len $.Topics)}},{{end}}{{end}}">
+1 -1
templates/repo/issue/branch_selector_field.tmpl
··· 42 42 <div class="item">{{ctx.Locale.Tr "repo.pulls.no_results"}}</div> 43 43 {{end}} 44 44 </div> 45 - <div id="tag-list" class="scrolling menu reference-list-menu {{if not .Issue}}new-issue{{end}} gt-hidden"> 45 + <div id="tag-list" class="scrolling menu reference-list-menu {{if not .Issue}}new-issue{{end}} tw-hidden"> 46 46 {{if .Reference}} 47 47 <div class="item text small" data-id="" data-id-selector="#ref_selector"><strong><a href="#">{{ctx.Locale.Tr "repo.clear_ref"}}</a></strong></div> 48 48 {{end}}
+2 -2
templates/repo/issue/fields/checkboxes.tmpl
··· 1 - <div class="field {{if not .item.VisibleOnForm}}gt-hidden{{end}}"> 1 + <div class="field {{if not .item.VisibleOnForm}}tw-hidden{{end}}"> 2 2 {{template "repo/issue/fields/header" .}} 3 3 {{range $i, $opt := .item.Attributes.options}} 4 4 <div class="field inline"> 5 - <div class="ui checkbox tw-mr-0 {{if and ($opt.visible) (not (SliceUtils.Contains $opt.visible "form"))}}gt-hidden{{end}}"> 5 + <div class="ui checkbox tw-mr-0 {{if and ($opt.visible) (not (SliceUtils.Contains $opt.visible "form"))}}tw-hidden{{end}}"> 6 6 <input type="checkbox" name="form-field-{{$.item.ID}}-{{$i}}" {{if $opt.required}}required{{end}}> 7 7 <label>{{RenderMarkdownToHtml $.context $opt.label}}</label> 8 8 </div>
+1 -1
templates/repo/issue/fields/dropdown.tmpl
··· 1 - <div class="field {{if not .item.VisibleOnForm}}gt-hidden{{end}}"> 1 + <div class="field {{if not .item.VisibleOnForm}}tw-hidden{{end}}"> 2 2 {{template "repo/issue/fields/header" .}} 3 3 {{/* FIXME: required validation */}} 4 4 <div class="ui fluid selection dropdown {{if .item.Attributes.multiple}}multiple clearable{{end}}">
+1 -1
templates/repo/issue/fields/input.tmpl
··· 1 - <div class="field {{if not .item.VisibleOnForm}}gt-hidden{{end}}"> 1 + <div class="field {{if not .item.VisibleOnForm}}tw-hidden{{end}}"> 2 2 {{template "repo/issue/fields/header" .}} 3 3 <input type="{{if .item.Validations.is_number}}number{{else}}text{{end}}" name="form-field-{{.item.ID}}" placeholder="{{.item.Attributes.placeholder}}" value="{{.item.Attributes.value}}" {{if .item.Validations.required}}required{{end}} {{if .item.Validations.regex}}pattern="{{.item.Validations.regex}}" title="{{.item.Validations.regex}}"{{end}}> 4 4 </div>
+1 -1
templates/repo/issue/fields/markdown.tmpl
··· 1 - <div class="field {{if not .item.VisibleOnForm}}gt-hidden{{end}}"> 1 + <div class="field {{if not .item.VisibleOnForm}}tw-hidden{{end}}"> 2 2 <div>{{RenderMarkdownToHtml .Context .item.Attributes.value}}</div> 3 3 </div>
+3 -3
templates/repo/issue/fields/textarea.tmpl
··· 1 1 {{$useMarkdownEditor := not .item.Attributes.render}} 2 - <div class="field {{if not .item.VisibleOnForm}}gt-hidden{{end}} {{if $useMarkdownEditor}}combo-editor-dropzone{{end}}"> 2 + <div class="field {{if not .item.VisibleOnForm}}tw-hidden{{end}} {{if $useMarkdownEditor}}combo-editor-dropzone{{end}}"> 3 3 {{template "repo/issue/fields/header" .}} 4 4 5 5 {{/* the real form element to provide the value */}} ··· 7 7 8 8 {{if $useMarkdownEditor}} 9 9 {{template "shared/combomarkdowneditor" (dict 10 - "ContainerClasses" "gt-hidden" 10 + "ContainerClasses" "tw-hidden" 11 11 "MarkdownPreviewUrl" (print .root.RepoLink "/markup") 12 12 "MarkdownPreviewContext" .root.RepoLink 13 13 "TextareaContent" .item.Attributes.value ··· 16 16 )}} 17 17 18 18 {{if .root.IsAttachmentEnabled}} 19 - <div class="tw-mt-4 form-field-dropzone gt-hidden"> 19 + <div class="tw-mt-4 form-field-dropzone tw-hidden"> 20 20 {{template "repo/upload" .root}} 21 21 </div> 22 22 {{end}}
+1 -1
templates/repo/issue/labels/edit_delete_label.tmpl
··· 30 30 </div> 31 31 <br> 32 32 <small class="desc">{{ctx.Locale.Tr "repo.issues.label_exclusive_desc"}}</small> 33 - <div class="desc tw-ml-1 tw-mt-2 gt-hidden label-exclusive-warning"> 33 + <div class="desc tw-ml-1 tw-mt-2 tw-hidden label-exclusive-warning"> 34 34 {{svg "octicon-alert"}} {{ctx.Locale.Tr "repo.issues.label_exclusive_warning"}} 35 35 </div> 36 36 <br>
+1 -1
templates/repo/issue/labels/label.tmpl
··· 1 1 <a 2 - class="item {{if not .label.IsChecked}}gt-hidden{{end}}" 2 + class="item {{if not .label.IsChecked}}tw-hidden{{end}}" 3 3 id="label_{{.label.ID}}" 4 4 href="{{.root.RepoLink}}/{{if or .root.IsPull .root.Issue.IsPull}}pulls{{else}}issues{{end}}?labels={{.label.ID}}"{{/* FIXME: use .root.Issue.Link or create .root.Link */}} 5 5 >
+1 -1
templates/repo/issue/labels/labels_sidebar.tmpl
··· 1 1 <div class="ui labels list"> 2 - <span class="no-select item {{if .root.HasSelectedLabel}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_label"}}</span> 2 + <span class="no-select item {{if .root.HasSelectedLabel}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_label"}}</span> 3 3 <span class="labels-list"> 4 4 {{range .root.Labels}} 5 5 {{template "repo/issue/labels/label" dict "root" $.root "label" .}}
+1 -1
templates/repo/issue/list.tmpl
··· 32 32 33 33 {{template "repo/issue/filters" .}} 34 34 35 - <div id="issue-actions" class="issue-list-toolbar gt-hidden"> 35 + <div id="issue-actions" class="issue-list-toolbar tw-hidden"> 36 36 <div class="issue-list-toolbar-left"> 37 37 {{template "repo/issue/openclose" .}} 38 38 <!-- Total Tracked Time -->
+4 -4
templates/repo/issue/new_form.tmpl
··· 68 68 </div> 69 69 </div> 70 70 <div class="ui select-milestone list"> 71 - <span class="no-select item {{if .Milestone}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_milestone"}}</span> 71 + <span class="no-select item {{if .Milestone}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_milestone"}}</span> 72 72 <div class="selected"> 73 73 {{if .Milestone}} 74 74 <a class="item muted sidebar-item-link" href="{{.RepoLink}}/issues?milestone={{.Milestone.ID}}"> ··· 129 129 </div> 130 130 </div> 131 131 <div class="ui select-project list"> 132 - <span class="no-select item {{if .Project}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_projects"}}</span> 132 + <span class="no-select item {{if .Project}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_projects"}}</span> 133 133 <div class="selected"> 134 134 {{if .Project}} 135 135 <a class="item muted sidebar-item-link" href="{{.Project.Link ctx}}"> ··· 165 165 </div> 166 166 </div> 167 167 <div class="ui assignees list"> 168 - <span class="no-select item {{if .HasSelectedLabel}}gt-hidden{{end}}"> 168 + <span class="no-select item {{if .HasSelectedLabel}}tw-hidden{{end}}"> 169 169 {{ctx.Locale.Tr "repo.issues.new.no_assignees"}} 170 170 </span> 171 171 <div class="selected"> 172 172 {{range .Assignees}} 173 - <a class="item tw-p-1 muted gt-hidden" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}"> 173 + <a class="item tw-p-1 muted tw-hidden" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}"> 174 174 {{ctx.AvatarUtils.Avatar . 28 "tw-mr-2 tw-align-middle"}}{{.GetDisplayName}} 175 175 </a> 176 176 {{end}}
+1 -1
templates/repo/issue/search.tmpl
··· 11 11 {{end}} 12 12 {{template "shared/search/input" dict "Value" .Keyword}} 13 13 {{if .PageIsIssueList}} 14 - <button id="issue-list-quick-goto" class="ui small icon button gt-hidden" data-tooltip-content="{{ctx.Locale.Tr "explore.go_to"}}" data-repo-link="{{.RepoLink}}">{{svg "octicon-hash"}}</button> 14 + <button id="issue-list-quick-goto" class="ui small icon button tw-hidden" data-tooltip-content="{{ctx.Locale.Tr "explore.go_to"}}" data-repo-link="{{.RepoLink}}">{{svg "octicon-hash"}}</button> 15 15 {{end}} 16 16 {{template "shared/search/button"}} 17 17 </div>
+3 -3
templates/repo/issue/view_content.tmpl
··· 59 59 <span class="no-content">{{ctx.Locale.Tr "repo.issues.no_content"}}</span> 60 60 {{end}} 61 61 </div> 62 - <div id="issue-{{.Issue.ID}}-raw" class="raw-content gt-hidden">{{.Issue.Content}}</div> 63 - <div class="edit-content-zone gt-hidden" data-update-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/content" data-context="{{.RepoLink}}" data-attachment-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/attachments" data-view-attachment-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/view-attachments"></div> 62 + <div id="issue-{{.Issue.ID}}-raw" class="raw-content tw-hidden">{{.Issue.Content}}</div> 63 + <div class="edit-content-zone tw-hidden" data-update-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/content" data-context="{{.RepoLink}}" data-attachment-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/attachments" data-view-attachment-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/view-attachments"></div> 64 64 {{if .Issue.Attachments}} 65 65 {{template "repo/issue/view_content/attachments" dict "Attachments" .Issue.Attachments "RenderedContent" .Issue.RenderedContent}} 66 66 {{end}} ··· 171 171 172 172 {{template "repo/issue/view_content/reference_issue_dialog" .}} 173 173 174 - <div class="gt-hidden" id="no-content"> 174 + <div class="tw-hidden" id="no-content"> 175 175 <span class="no-content">{{ctx.Locale.Tr "repo.issues.no_content"}}</span> 176 176 </div> 177 177
+4 -4
templates/repo/issue/view_content/comments.tmpl
··· 66 66 <span class="no-content">{{ctx.Locale.Tr "repo.issues.no_content"}}</span> 67 67 {{end}} 68 68 </div> 69 - <div id="issuecomment-{{.ID}}-raw" class="raw-content gt-hidden">{{.Content}}</div> 70 - <div class="edit-content-zone gt-hidden" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div> 69 + <div id="issuecomment-{{.ID}}-raw" class="raw-content tw-hidden">{{.Content}}</div> 70 + <div class="edit-content-zone tw-hidden" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div> 71 71 {{if .Attachments}} 72 72 {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} 73 73 {{end}} ··· 440 440 <span class="no-content">{{ctx.Locale.Tr "repo.issues.no_content"}}</span> 441 441 {{end}} 442 442 </div> 443 - <div id="issuecomment-{{.ID}}-raw" class="raw-content gt-hidden">{{.Content}}</div> 444 - <div class="edit-content-zone gt-hidden" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div> 443 + <div id="issuecomment-{{.ID}}-raw" class="raw-content tw-hidden">{{.Content}}</div> 444 + <div class="edit-content-zone tw-hidden" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div> 445 445 {{if .Attachments}} 446 446 {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} 447 447 {{end}}
+6 -6
templates/repo/issue/view_content/conversation.tmpl
··· 14 14 </div> 15 15 <div> 16 16 {{if or $invalid $resolved}} 17 - <button id="show-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="{{if not $resolved}}gt-hidden {{end}}ui compact labeled button show-outdated tw-flex tw-items-center"> 17 + <button id="show-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="{{if not $resolved}}tw-hidden {{end}}ui compact labeled button show-outdated tw-flex tw-items-center"> 18 18 {{svg "octicon-unfold" 16 "tw-mr-2"}} 19 19 {{if $resolved}} 20 20 {{ctx.Locale.Tr "repo.issues.review.show_resolved"}} ··· 22 22 {{ctx.Locale.Tr "repo.issues.review.show_outdated"}} 23 23 {{end}} 24 24 </button> 25 - <button id="hide-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="{{if $resolved}}gt-hidden {{end}}ui compact labeled button hide-outdated tw-flex tw-items-center"> 25 + <button id="hide-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="{{if $resolved}}tw-hidden {{end}}ui compact labeled button hide-outdated tw-flex tw-items-center"> 26 26 {{svg "octicon-fold" 16 "tw-mr-2"}} 27 27 {{if $resolved}} 28 28 {{ctx.Locale.Tr "repo.issues.review.hide_resolved"}} ··· 36 36 {{$diff := (CommentMustAsDiff ctx (index .comments 0))}} 37 37 {{if $diff}} 38 38 {{$file := (index $diff.Files 0)}} 39 - <div id="code-preview-{{(index .comments 0).ID}}" class="ui table segment{{if $resolved}} gt-hidden{{end}}"> 39 + <div id="code-preview-{{(index .comments 0).ID}}" class="ui table segment{{if $resolved}} tw-hidden{{end}}"> 40 40 <div class="diff-file-box diff-box file-content {{TabSizeClass $.Editorconfig $file.Name}}"> 41 41 <div class="file-body file-code code-view code-diff code-diff-unified unicode-escaped"> 42 42 <table> ··· 48 48 </div> 49 49 </div> 50 50 {{end}} 51 - <div id="code-comments-{{(index .comments 0).ID}}" class="comment-code-cloud ui segment{{if $resolved}} gt-hidden{{end}}"> 51 + <div id="code-comments-{{(index .comments 0).ID}}" class="comment-code-cloud ui segment{{if $resolved}} tw-hidden{{end}}"> 52 52 <div class="ui comments tw-mb-0"> 53 53 {{range .comments}} 54 54 {{$createdSubStr:= TimeSinceUnix .CreatedUnix ctx.Locale}} ··· 92 92 <span class="no-content">{{ctx.Locale.Tr "repo.issues.no_content"}}</span> 93 93 {{end}} 94 94 </div> 95 - <div id="issuecomment-{{.ID}}-raw" class="raw-content gt-hidden">{{.Content}}</div> 96 - <div class="edit-content-zone gt-hidden" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div> 95 + <div id="issuecomment-{{.ID}}-raw" class="raw-content tw-hidden">{{.Content}}</div> 96 + <div class="edit-content-zone tw-hidden" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div> 97 97 {{if .Attachments}} 98 98 {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} 99 99 {{end}}
+6 -6
templates/repo/issue/view_content/pull_merge_instruction.tmpl
··· 1 1 <div class="divider"></div> 2 2 <div class="instruct-toggle"> {{ctx.Locale.Tr "repo.pulls.cmd_instruction_hint"}} </div> 3 - <div class="instruct-content tw-mt-2 gt-hidden"> 3 + <div class="instruct-content tw-mt-2 tw-hidden"> 4 4 <div><h3>{{ctx.Locale.Tr "repo.pulls.cmd_instruction_checkout_title"}}</h3>{{ctx.Locale.Tr "repo.pulls.cmd_instruction_checkout_desc"}}</div> 5 5 {{$localBranch := .PullRequest.HeadBranch}} 6 6 {{if ne .PullRequest.HeadRepo.ID .PullRequest.BaseRepo.ID}} ··· 21 21 <div>git checkout {{.PullRequest.BaseBranch}}</div> 22 22 <div>git merge --no-ff {{$localBranch}}</div> 23 23 </div> 24 - <div class="gt-hidden" data-pull-merge-style="rebase"> 24 + <div class="tw-hidden" data-pull-merge-style="rebase"> 25 25 <div>git checkout {{.PullRequest.BaseBranch}}</div> 26 26 <div>git merge --ff-only {{$localBranch}}</div> 27 27 </div> 28 - <div class="gt-hidden" data-pull-merge-style="rebase-merge"> 28 + <div class="tw-hidden" data-pull-merge-style="rebase-merge"> 29 29 <div>git checkout {{$localBranch}}</div> 30 30 <div>git rebase {{.PullRequest.BaseBranch}}</div> 31 31 <div>git checkout {{.PullRequest.BaseBranch}}</div> 32 32 <div>git merge --no-ff {{$localBranch}}</div> 33 33 </div> 34 - <div class="gt-hidden" data-pull-merge-style="squash"> 34 + <div class="tw-hidden" data-pull-merge-style="squash"> 35 35 <div>git checkout {{.PullRequest.BaseBranch}}</div> 36 36 <div>git merge --squash {{$localBranch}}</div> 37 37 </div> 38 - <div class="gt-hidden" data-pull-merge-style="fast-forward-only"> 38 + <div class="tw-hidden" data-pull-merge-style="fast-forward-only"> 39 39 <div>git checkout {{.PullRequest.BaseBranch}}</div> 40 40 <div>git merge --ff-only {{$localBranch}}</div> 41 41 </div> 42 - <div class="gt-hidden" data-pull-merge-style="manually-merged"> 42 + <div class="tw-hidden" data-pull-merge-style="manually-merged"> 43 43 <div>git checkout {{.PullRequest.BaseBranch}}</div> 44 44 <div>git merge {{$localBranch}}</div> 45 45 </div>
+6 -6
templates/repo/issue/view_content/sidebar.tmpl
··· 47 47 </div> 48 48 49 49 <div class="ui assignees list"> 50 - <span class="no-select item {{if or .OriginalReviews .PullReviewers}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_reviewers"}}</span> 50 + <span class="no-select item {{if or .OriginalReviews .PullReviewers}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_reviewers"}}</span> 51 51 <div class="selected"> 52 52 {{range .PullReviewers}} 53 53 <div class="item tw-flex tw-items-center tw-py-2"> ··· 144 144 </div> 145 145 </div> 146 146 <div class="ui select-milestone list"> 147 - <span class="no-select item {{if .Issue.Milestone}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_milestone"}}</span> 147 + <span class="no-select item {{if .Issue.Milestone}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_milestone"}}</span> 148 148 <div class="selected"> 149 149 {{if .Issue.Milestone}} 150 150 <a class="item muted sidebar-item-link" href="{{.RepoLink}}/milestone/{{.Issue.Milestone.ID}}"> ··· 202 202 </div> 203 203 </div> 204 204 <div class="ui select-project list"> 205 - <span class="no-select item {{if .Issue.Project}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_projects"}}</span> 205 + <span class="no-select item {{if .Issue.Project}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_projects"}}</span> 206 206 <div class="selected"> 207 207 {{if .Issue.Project}} 208 208 <a class="item muted sidebar-item-link" href="{{.Issue.Project.Link ctx}}"> ··· 247 247 </div> 248 248 </div> 249 249 <div class="ui assignees list"> 250 - <span class="no-select item {{if .Issue.Assignees}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_assignees"}}</span> 250 + <span class="no-select item {{if .Issue.Assignees}}tw-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_assignees"}}</span> 251 251 <div class="selected"> 252 252 {{range .Issue.Assignees}} 253 253 <div class="item"> ··· 362 362 <div class="divider"></div> 363 363 <span class="text"><strong>{{ctx.Locale.Tr "repo.issues.due_date"}}</strong></span> 364 364 <div class="ui form" id="deadline-loader"> 365 - <div class="ui negative message gt-hidden" id="deadline-err-invalid-date"> 365 + <div class="ui negative message tw-hidden" id="deadline-err-invalid-date"> 366 366 {{svg "octicon-x" 16 "close icon"}} 367 367 {{ctx.Locale.Tr "repo.issues.due_date_invalid"}} 368 368 </div> ··· 386 386 {{end}} 387 387 388 388 {{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}} 389 - <div {{if ne .Issue.DeadlineUnix 0}} class="gt-hidden"{{end}} id="deadlineForm"> 389 + <div {{if ne .Issue.DeadlineUnix 0}} class="tw-hidden"{{end}} id="deadlineForm"> 390 390 <form class="ui fluid action input issue-due-form" action="{{AppSubUrl}}/{{PathEscape .Repository.Owner.Name}}/{{PathEscape .Repository.Name}}/issues/{{.Issue.Index}}/deadline" method="post" id="update-issue-deadline-form"> 391 391 {{$.CsrfTokenHtml}} 392 392 <input required placeholder="{{ctx.Locale.Tr "repo.issues.due_date_form"}}" {{if gt .Issue.DeadlineUnix 0}}value="{{.Issue.DeadlineUnix.FormatDate}}"{{end}} type="date" name="deadlineDate" id="deadlineDate">
+4 -4
templates/repo/issue/view_title.tmpl
··· 8 8 <h1 class="gt-word-break"> 9 9 <span id="issue-title">{{RenderIssueTitle $.Context .Issue.Title ($.Repository.ComposeMetas ctx) | RenderCodeBlock}} <span class="index">#{{.Issue.Index}}</span> 10 10 </span> 11 - <div id="edit-title-input" class="ui input tw-flex-1 gt-hidden"> 11 + <div id="edit-title-input" class="ui input tw-flex-1 tw-hidden"> 12 12 <input value="{{.Issue.Title}}" maxlength="255" autocomplete="off"> 13 13 </div> 14 14 </h1> ··· 22 22 </div> 23 23 {{if and (or .HasIssuesOrPullsWritePermission .IsIssuePoster) (not .Repository.IsArchived)}} 24 24 <div class="edit-buttons"> 25 - <button id="cancel-edit-title" class="ui small basic button in-edit gt-hidden">{{ctx.Locale.Tr "repo.issues.cancel"}}</button> 26 - <button id="save-edit-title" class="ui small primary button in-edit gt-hidden tw-mr-0" data-update-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/title" {{if .Issue.IsPull}}data-target-update-url="{{$.RepoLink}}/pull/{{.Issue.Index}}/target_branch"{{end}}>{{ctx.Locale.Tr "repo.issues.save"}}</button> 25 + <button id="cancel-edit-title" class="ui small basic button in-edit tw-hidden">{{ctx.Locale.Tr "repo.issues.cancel"}}</button> 26 + <button id="save-edit-title" class="ui small primary button in-edit tw-hidden tw-mr-0" data-update-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/title" {{if .Issue.IsPull}}data-target-update-url="{{$.RepoLink}}/pull/{{.Issue.Index}}/target_branch"{{end}}>{{ctx.Locale.Tr "repo.issues.save"}}</button> 27 27 </div> 28 28 {{end}} 29 29 </div> ··· 81 81 </span> 82 82 </a> 83 83 {{end}} 84 - <span id="pull-desc-edit" class="gt-hidden flex-text-block"> 84 + <span id="pull-desc-edit" class="tw-hidden flex-text-block"> 85 85 <div class="ui floating filter dropdown"> 86 86 <div class="ui basic small button tw-mr-0"> 87 87 <span class="text">{{ctx.Locale.Tr "repo.pulls.compare_compare"}}: {{$.HeadTarget}}</span>
+1 -1
templates/repo/latest_commit.tmpl
··· 25 25 <span class="grey commit-summary" title="{{.LatestCommit.Summary}}"><span class="message-wrapper">{{RenderCommitMessageLinkSubject $.Context .LatestCommit.Message $commitLink ($.Repository.ComposeMetas ctx)}}</span> 26 26 {{if IsMultilineCommitMessage .LatestCommit.Message}} 27 27 <button class="ui button js-toggle-commit-body ellipsis-button" aria-expanded="false">...</button> 28 - <pre class="commit-body gt-hidden">{{RenderCommitBody $.Context .LatestCommit.Message ($.Repository.ComposeMetas ctx)}}</pre> 28 + <pre class="commit-body tw-hidden">{{RenderCommitBody $.Context .LatestCommit.Message ($.Repository.ComposeMetas ctx)}}</pre> 29 29 {{end}} 30 30 </span> 31 31 {{end}}
+3 -3
templates/repo/migrate/migrating.tmpl
··· 12 12 <img src="{{AssetUrlPrefix}}/img/forgejo-loading.svg" width="256" height="256"> 13 13 </div> 14 14 </div> 15 - <div id="repo_migrating_failed_image" class="sixteen wide center aligned centered column gt-hidden"> 15 + <div id="repo_migrating_failed_image" class="sixteen wide center aligned centered column tw-hidden"> 16 16 <div> 17 17 <span class="red">{{svg "octicon-git-pull-request-closed" 256 "ui red icon"}}</span> 18 18 </div> ··· 24 24 <p>{{ctx.Locale.Tr "repo.migrate.migrating" .CloneAddr}}</p> 25 25 <p id="repo_migrating_progress_message"></p> 26 26 </div> 27 - <div id="repo_migrating_failed" class="gt-hidden"> 27 + <div id="repo_migrating_failed" class="tw-hidden"> 28 28 {{if .CloneAddr}} 29 29 <p>{{ctx.Locale.Tr "repo.migrate.migrating_failed" .CloneAddr}}</p> 30 30 {{else}} ··· 40 40 {{else}} 41 41 <button class="ui basic show-modal button" data-modal="#cancel-repo-modal">{{ctx.Locale.Tr "cancel"}}</button> 42 42 {{end}} 43 - <button id="repo_migrating_retry" data-migrating-task-retry-url="{{.Link}}/settings/migrate/retry" class="ui basic button gt-hidden">{{ctx.Locale.Tr "retry"}}</button> 43 + <button id="repo_migrating_retry" data-migrating-task-retry-url="{{.Link}}/settings/migrate/retry" class="ui basic button tw-hidden">{{ctx.Locale.Tr "retry"}}</button> 44 44 </div> 45 45 {{end}} 46 46 </div>
+2 -2
templates/repo/migrate/options.tmpl
··· 14 14 <input id="lfs" name="lfs" type="checkbox" {{if .lfs}} checked{{end}}> 15 15 <label>{{ctx.Locale.Tr "repo.migrate_options_lfs"}}</label> 16 16 </div> 17 - <span id="lfs_settings" class="gt-hidden">(<a id="lfs_settings_show" href="#">{{ctx.Locale.Tr "repo.settings.advanced_settings"}}</a>)</span> 17 + <span id="lfs_settings" class="tw-hidden">(<a id="lfs_settings_show" href="#">{{ctx.Locale.Tr "repo.settings.advanced_settings"}}</a>)</span> 18 18 </div> 19 - <div id="lfs_endpoint" class="gt-hidden"> 19 + <div id="lfs_endpoint" class="tw-hidden"> 20 20 <span class="help">{{ctx.Locale.Tr "repo.migrate_options_lfs_endpoint.description" "https://github.com/git-lfs/git-lfs/blob/main/docs/api/server-discovery.md#server-discovery"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate_options_lfs_endpoint.description.local"}}{{end}}</span> 21 21 <div class="inline field {{if .Err_LFSEndpoint}}error{{end}}"> 22 22 <label>{{ctx.Locale.Tr "repo.migrate_options_lfs_endpoint.label"}}</label>
+1 -1
templates/repo/settings/deploy_keys.tmpl
··· 11 11 </div> 12 12 </h4> 13 13 <div class="ui attached segment"> 14 - <div class="{{if not .HasError}}gt-hidden{{end}} tw-mb-4" id="add-deploy-key-panel"> 14 + <div class="{{if not .HasError}}tw-hidden{{end}} tw-mb-4" id="add-deploy-key-panel"> 15 15 <form class="ui form" action="{{.Link}}" method="post"> 16 16 {{.CsrfTokenHtml}} 17 17 <div class="field">
+1 -1
templates/repo/settings/githook_edit.tmpl
··· 14 14 </div> 15 15 <div class="field"> 16 16 <label for="content">{{ctx.Locale.Tr "repo.settings.githook_content"}}</label> 17 - <textarea id="content" name="content" class="gt-hidden">{{if .IsActive}}{{.Content}}{{else}}{{.Sample}}{{end}}</textarea> 17 + <textarea id="content" name="content" class="tw-hidden">{{if .IsActive}}{{.Content}}{{else}}{{.Sample}}{{end}}</textarea> 18 18 <div class="editor-loading is-loading"></div> 19 19 </div> 20 20 <div class="inline field">
+1 -1
templates/repo/settings/lfs_file.tmpl
··· 5 5 <a href="{{.LFSFilesLink}}">{{ctx.Locale.Tr "repo.settings.lfs"}}</a> / <span class="truncate sha">{{.LFSFile.Oid}}</span> 6 6 <div class="ui right"> 7 7 {{if .EscapeStatus.Escaped}} 8 - <a class="ui tiny basic button unescape-button gt-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</a> 8 + <a class="ui tiny basic button unescape-button tw-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</a> 9 9 <a class="ui tiny basic button escape-button">{{ctx.Locale.Tr "repo.escape_control_characters"}}</a> 10 10 {{end}} 11 11 <a class="ui primary tiny button" href="{{.LFSFilesLink}}/find?oid={{.LFSFile.Oid}}&size={{.LFSFile.Size}}">{{ctx.Locale.Tr "repo.settings.lfs_findcommits"}}</a>
+1 -1
templates/repo/settings/protected_branch.tmpl
··· 179 179 <tr> 180 180 <td> 181 181 <span>{{.}}</span> 182 - <span class="status-check-matched-mark gt-hidden" data-status-check="{{.}}">{{ctx.Locale.Tr "repo.settings.protect_status_check_matched"}}</span> 182 + <span class="status-check-matched-mark tw-hidden" data-status-check="{{.}}">{{ctx.Locale.Tr "repo.settings.protect_status_check_matched"}}</span> 183 183 </td> 184 184 </tr> 185 185 {{else}}
+1 -1
templates/repo/settings/webhook/history.tmpl
··· 32 32 {{TimeSince .Delivered.AsTime ctx.Locale}} 33 33 </span> 34 34 </div> 35 - <div class="info gt-hidden" id="info-{{.ID}}"> 35 + <div class="info tw-hidden" id="info-{{.ID}}"> 36 36 <div class="ui top attached tabular menu"> 37 37 <a class="item active" data-tab="request-{{.ID}}">{{ctx.Locale.Tr "repo.settings.webhook.request"}}</a> 38 38 <a class="item" data-tab="response-{{.ID}}">
+1 -1
templates/repo/settings/webhook/settings.tmpl
··· 22 22 </div> 23 23 </div> 24 24 25 - <div class="events fields ui grid {{if not .Webhook.ChooseEvents}}gt-hidden{{end}}"> 25 + <div class="events fields ui grid {{if not .Webhook.ChooseEvents}}tw-hidden{{end}}"> 26 26 <!-- Repository Events --> 27 27 <div class="fourteen wide column"> 28 28 <label>{{ctx.Locale.Tr "repo.settings.event_header_repository"}}</label>
+1 -1
templates/repo/sub_menu.tmpl
··· 21 21 {{end}} 22 22 </div> 23 23 {{if and (.Permission.CanRead $.UnitTypeCode) (not .IsEmptyRepo) .LanguageStats}} 24 - <div class="ui segment sub-menu language-stats-details gt-hidden"> 24 + <div class="ui segment sub-menu language-stats-details tw-hidden"> 25 25 {{range .LanguageStats}} 26 26 <div class="item"> 27 27 <i class="color-icon" style="background-color: {{.Color}}"></i>
+2 -2
templates/repo/view_file.tmpl
··· 55 55 {{end}} 56 56 <a class="ui mini basic button" href="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/{{PathEscapeSegments .TreePath}}">{{ctx.Locale.Tr "repo.file_history"}}</a> 57 57 {{if .EscapeStatus.Escaped}} 58 - <button class="ui mini basic button unescape-button gt-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</button> 58 + <button class="ui mini basic button unescape-button tw-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</button> 59 59 <button class="ui mini basic button escape-button">{{ctx.Locale.Tr "repo.escape_control_characters"}}</button> 60 60 {{end}} 61 61 </div> ··· 85 85 {{end}} 86 86 {{end}} 87 87 {{else if .EscapeStatus.Escaped}} 88 - <button class="ui mini basic button unescape-button tw-mr-1 gt-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</button> 88 + <button class="ui mini basic button unescape-button tw-mr-1 tw-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</button> 89 89 <button class="ui mini basic button escape-button tw-mr-1">{{ctx.Locale.Tr "repo.escape_control_characters"}}</button> 90 90 {{end}} 91 91 {{if and .ReadmeInList .CanEditReadmeFile}}
+1 -1
templates/repo/wiki/view.tmpl
··· 45 45 </div> 46 46 <div class="eight wide right aligned column"> 47 47 {{if .EscapeStatus.Escaped}} 48 - <a class="ui small button unescape-button gt-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</a> 48 + <a class="ui small button unescape-button tw-hidden">{{ctx.Locale.Tr "repo.unescape_control_characters"}}</a> 49 49 <a class="ui small button escape-button">{{ctx.Locale.Tr "repo.escape_control_characters"}}</a> 50 50 {{end}} 51 51 {{if and .CanWriteWiki (not .Repository.IsMirror)}}
+2 -2
templates/user/auth/webauthn_error.tmpl
··· 1 - <div id="webauthn-error" class="ui negative message gt-hidden"> 1 + <div id="webauthn-error" class="ui negative message tw-hidden"> 2 2 <div class="header">{{ctx.Locale.Tr "webauthn_error"}}</div> 3 3 <div id="webauthn-error-msg" class="tw-pt-2"></div> 4 - <div class="gt-hidden"> 4 + <div class="tw-hidden"> 5 5 <div data-webauthn-error-msg="browser">{{ctx.Locale.Tr "webauthn_unsupported_browser"}}</div> 6 6 <div data-webauthn-error-msg="unknown">{{ctx.Locale.Tr "webauthn_error_unknown"}}</div> 7 7 <div data-webauthn-error-msg="insecure">{{ctx.Locale.Tr "webauthn_error_insecure"}}</div>
+1 -1
templates/user/dashboard/issues.tmpl
··· 52 52 <input type="hidden" name="sort" value="{{$.SortType}}"> 53 53 <input type="hidden" name="state" value="{{$.State}}"> 54 54 {{template "shared/search/input" dict "Value" $.Keyword}} 55 - <button id="issue-list-quick-goto" class="ui small icon button gt-hidden" data-tooltip-content="{{ctx.Locale.Tr "explore.go_to"}}">{{svg "octicon-hash"}}</button> 55 + <button id="issue-list-quick-goto" class="ui small icon button tw-hidden" data-tooltip-content="{{ctx.Locale.Tr "explore.go_to"}}">{{svg "octicon-hash"}}</button> 56 56 {{template "shared/search/button"}} 57 57 </div> 58 58 </form>
+2 -2
templates/user/notification/notification_div.tmpl
··· 5 5 <div class="small-menu-items ui compact tiny menu"> 6 6 <a class="{{if eq .Status 1}}active {{end}}item" href="{{AppSubUrl}}/notifications?q=unread"> 7 7 {{ctx.Locale.Tr "notification.unread"}} 8 - <div class="notifications-unread-count ui label {{if not $notificationUnreadCount}}gt-hidden{{end}}">{{$notificationUnreadCount}}</div> 8 + <div class="notifications-unread-count ui label {{if not $notificationUnreadCount}}tw-hidden{{end}}">{{$notificationUnreadCount}}</div> 9 9 </a> 10 10 <a class="{{if eq .Status 2}}active {{end}}item" href="{{AppSubUrl}}/notifications?q=read"> 11 11 {{ctx.Locale.Tr "notification.read"}} ··· 14 14 {{if and (eq .Status 1)}} 15 15 <form action="{{AppSubUrl}}/notifications/purge" method="post"> 16 16 {{$.CsrfTokenHtml}} 17 - <div class="{{if not $notificationUnreadCount}}gt-hidden{{end}}"> 17 + <div class="{{if not $notificationUnreadCount}}tw-hidden{{end}}"> 18 18 <button class="ui mini button primary tw-mr-0" title="{{ctx.Locale.Tr "notification.mark_all_as_read"}}"> 19 19 {{svg "octicon-checklist"}} 20 20 </button>
+1 -1
templates/user/settings/applications.tmpl
··· 90 90 {{ctx.Locale.Tr "settings.generate_token"}} 91 91 </button> 92 92 </form>{{/* Fomantic ".ui.form .warning.message" is hidden by default, so put the warning message out of the form*/}} 93 - <div id="scoped-access-warning" class="ui warning message center gt-hidden"> 93 + <div id="scoped-access-warning" class="ui warning message center tw-hidden"> 94 94 {{ctx.Locale.Tr "settings.at_least_one_permission"}} 95 95 </div> 96 96 </div>
+1 -1
templates/user/settings/keys_gpg.tmpl
··· 5 5 </div> 6 6 </h4> 7 7 <div class="ui attached segment"> 8 - <div class="{{if not .HasGPGError}}gt-hidden{{end}} tw-mb-4" id="add-gpg-key-panel"> 8 + <div class="{{if not .HasGPGError}}tw-hidden{{end}} tw-mb-4" id="add-gpg-key-panel"> 9 9 <form class="ui form{{if .HasGPGError}} error{{end}}" action="{{.Link}}" method="post"> 10 10 {{.CsrfTokenHtml}} 11 11 <input type="hidden" name="title" value="none">
+1 -1
templates/user/settings/keys_principal.tmpl
··· 36 36 </div> 37 37 <br> 38 38 39 - <div {{if not .HasPrincipalError}}class="gt-hidden"{{end}} id="add-ssh-principal-panel"> 39 + <div {{if not .HasPrincipalError}}class="tw-hidden"{{end}} id="add-ssh-principal-panel"> 40 40 <h4 class="ui top attached header"> 41 41 {{ctx.Locale.Tr "settings.add_new_principal"}} 42 42 </h4>
+1 -1
templates/user/settings/keys_ssh.tmpl
··· 7 7 </div> 8 8 </h4> 9 9 <div class="ui attached segment"> 10 - <div class="{{if not .HasSSHError}}gt-hidden{{end}} tw-mb-4" id="add-ssh-key-panel"> 10 + <div class="{{if not .HasSSHError}}tw-hidden{{end}} tw-mb-4" id="add-ssh-key-panel"> 11 11 <form class="ui form" action="{{.Link}}" method="post"> 12 12 {{.CsrfTokenHtml}} 13 13 <div class="field {{if .Err_Title}}error{{end}}">
+2 -2
templates/user/settings/profile.tmpl
··· 9 9 {{.CsrfTokenHtml}} 10 10 <div class="required field {{if .Err_Name}}error{{end}}"> 11 11 <label for="username">{{ctx.Locale.Tr "username"}} 12 - <span class="text red gt-hidden" id="name-change-prompt"> {{ctx.Locale.Tr "settings.change_username_prompt"}}</span> 13 - <span class="text red gt-hidden" id="name-change-redirect-prompt"> {{ctx.Locale.Tr "settings.change_username_redirect_prompt"}}</span> 12 + <span class="text red tw-hidden" id="name-change-prompt"> {{ctx.Locale.Tr "settings.change_username_prompt"}}</span> 13 + <span class="text red tw-hidden" id="name-change-redirect-prompt"> {{ctx.Locale.Tr "settings.change_username_redirect_prompt"}}</span> 14 14 </label> 15 15 <input id="username" name="name" value="{{.SignedUser.Name}}" data-name="{{.SignedUser.Name}}" autofocus required {{if or (not .SignedUser.IsLocal) .IsReverseProxy}}disabled{{end}} maxlength="40"> 16 16 {{if or (not .SignedUser.IsLocal) .IsReverseProxy}}
+3 -3
web_src/css/helpers.css
··· 45 45 .interact-bg:active { background: var(--color-active) !important; } 46 46 47 47 /* 48 - gt-hidden must win all other "display: xxx !important" classes to get the chance to "hide" an element. 48 + tw-hidden must win all other "display: xxx !important" classes to get the chance to "hide" an element. 49 49 do not use: 50 50 * "[hidden]" attribute: it's too weak, can not be applied to an element with "display: flex" 51 51 * ".hidden" class: it has been polluted by Fomantic UI in many cases 52 52 * inline style="display: none": it's difficult to tweak 53 53 * jQuery's show/hide/toggle: it can not show/hide elements with "display: xxx !important" 54 54 only use: 55 - * this ".gt-hidden" class 55 + * this ".tw-hidden" class 56 56 * showElem/hideElem/toggleElem functions in "utils/dom.js" 57 57 */ 58 - .gt-hidden.gt-hidden { display: none !important; } 58 + .tw-hidden.tw-hidden { display: none !important; } 59 59 60 60 @media (max-width: 767.98px) { 61 61 /* double selector so it wins over .tw-flex (old .gt-df) etc */
+3 -2
web_src/css/modules/button.css
··· 68 68 border-left: 1px solid var(--color-secondary-dark-2); 69 69 } 70 70 71 + /* TODO: these "tw-hidden" selectors are only used by "blame.tmpl" buttons: Raw/Normal View/History/Unescape, need to be refactored to a clear solution later */ 71 72 .ui.buttons .button:first-child, 72 - .ui.buttons .button.gt-hidden:first-child + .button { 73 + .ui.buttons .button.tw-hidden:first-child + .button { 73 74 border-left: 1px solid var(--color-light-border); 74 75 } 75 76 76 77 .ui.buttons .button:last-child, 77 - .ui.buttons .button:nth-last-child(2):has(+ .button.gt-hidden) { 78 + .ui.buttons .button:nth-last-child(2):has(+ .button.tw-hidden) { 78 79 border-right: 1px solid var(--color-light-border); 79 80 } 80 81
+1 -1
web_src/css/shared/flex-list.css
··· 86 86 border-top: 1px solid var(--color-secondary); 87 87 } 88 88 89 - /* Fomantic UI segment has default "padding: 1em", so here it removes the padding-top and padding-bottom accordingly (there might also be some `gt-hidden` siblings). 89 + /* Fomantic UI segment has default "padding: 1em", so here it removes the padding-top and padding-bottom accordingly (there might also be some `tw-hidden` siblings). 90 90 Developers could also use "flex-space-fitted" class to remove the first item's padding-top and the last item's padding-bottom */ 91 91 .flex-list.flex-space-fitted > .flex-item:first-child, 92 92 .ui.segment > .flex-list > .flex-item:first-child {
+3 -3
web_src/js/features/comp/LabelEdit.js
··· 15 15 $exclusiveField.removeClass('muted'); 16 16 $exclusiveField.removeAttr('aria-disabled'); 17 17 if ($exclusiveCheckbox[0].checked && $exclusiveCheckbox.data('exclusive-warn')) { 18 - $exclusiveWarning.removeClass('gt-hidden'); 18 + $exclusiveWarning.removeClass('tw-hidden'); 19 19 } else { 20 - $exclusiveWarning.addClass('gt-hidden'); 20 + $exclusiveWarning.addClass('tw-hidden'); 21 21 } 22 22 } else { 23 23 $exclusiveField.addClass('muted'); 24 24 $exclusiveField.attr('aria-disabled', 'true'); 25 - $exclusiveWarning.addClass('gt-hidden'); 25 + $exclusiveWarning.addClass('tw-hidden'); 26 26 } 27 27 } 28 28
+3 -3
web_src/js/features/notification.js
··· 35 35 const data = JSON.parse(event.data); 36 36 37 37 for (const count of document.querySelectorAll('.notification_count')) { 38 - count.classList.toggle('gt-hidden', data.Count === 0); 38 + count.classList.toggle('tw-hidden', data.Count === 0); 39 39 count.textContent = `${data.Count}`; 40 40 } 41 41 await updateNotificationTable(); ··· 179 179 180 180 const $notificationCount = $('.notification_count'); 181 181 if (data.new === 0) { 182 - $notificationCount.addClass('gt-hidden'); 182 + $notificationCount.addClass('tw-hidden'); 183 183 } else { 184 - $notificationCount.removeClass('gt-hidden'); 184 + $notificationCount.removeClass('tw-hidden'); 185 185 } 186 186 187 187 $notificationCount.text(`${data.new}`);
+4 -4
web_src/js/features/repo-diff.js
··· 42 42 $this.addClass('active'); 43 43 44 44 const $target = $($this.data('toggle-selector')); 45 - $target.parent().children().addClass('gt-hidden'); 46 - $target.removeClass('gt-hidden'); 45 + $target.parent().children().addClass('tw-hidden'); 46 + $target.removeClass('tw-hidden'); 47 47 }); 48 48 } 49 49 ··· 120 120 // Previous/Next code review conversation 121 121 $(document).on('click', '.previous-conversation', (e) => { 122 122 const $conversation = $(e.currentTarget).closest('.comment-code-cloud'); 123 - const $conversations = $('.comment-code-cloud:not(.gt-hidden)'); 123 + const $conversations = $('.comment-code-cloud:not(.tw-hidden)'); 124 124 const index = $conversations.index($conversation); 125 125 const previousIndex = index > 0 ? index - 1 : $conversations.length - 1; 126 126 const $previousConversation = $conversations.eq(previousIndex); ··· 129 129 }); 130 130 $(document).on('click', '.next-conversation', (e) => { 131 131 const $conversation = $(e.currentTarget).closest('.comment-code-cloud'); 132 - const $conversations = $('.comment-code-cloud:not(.gt-hidden)'); 132 + const $conversations = $('.comment-code-cloud:not(.tw-hidden)'); 133 133 const index = $conversations.index($conversation); 134 134 const nextIndex = index < $conversations.length - 1 ? index + 1 : 0; 135 135 const $nextConversation = $conversations.eq(nextIndex);
+6 -6
web_src/js/features/repo-graph.js
··· 57 57 ajaxUrl.searchParams.set('div-only', 'true'); 58 58 window.history.replaceState({}, '', queryString ? `?${queryString}` : window.location.pathname); 59 59 $('#pagination').empty(); 60 - $('#rel-container').addClass('gt-hidden'); 61 - $('#rev-container').addClass('gt-hidden'); 62 - $('#loading-indicator').removeClass('gt-hidden'); 60 + $('#rel-container').addClass('tw-hidden'); 61 + $('#rev-container').addClass('tw-hidden'); 62 + $('#loading-indicator').removeClass('tw-hidden'); 63 63 (async () => { 64 64 const response = await GET(String(ajaxUrl)); 65 65 const html = await response.text(); ··· 67 67 $('#pagination').html($div.find('#pagination').html()); 68 68 $('#rel-container').html($div.find('#rel-container').html()); 69 69 $('#rev-container').html($div.find('#rev-container').html()); 70 - $('#loading-indicator').addClass('gt-hidden'); 71 - $('#rel-container').removeClass('gt-hidden'); 72 - $('#rev-container').removeClass('gt-hidden'); 70 + $('#loading-indicator').addClass('tw-hidden'); 71 + $('#rel-container').removeClass('tw-hidden'); 72 + $('#rev-container').removeClass('tw-hidden'); 73 73 })(); 74 74 }; 75 75 const dropdownSelected = params.getAll('branch');
+2 -2
web_src/js/features/repo-issue-content.js
··· 18 18 ${svg('octicon-x', 16, 'close icon inside')} 19 19 <div class="header tw-flex tw-items-center tw-justify-between"> 20 20 <div>${itemTitleHtml}</div> 21 - <div class="ui dropdown dialog-header-options tw-mr-8 gt-hidden"> 21 + <div class="ui dropdown dialog-header-options tw-mr-8 tw-hidden"> 22 22 ${i18nTextOptions} 23 23 ${svg('octicon-triangle-down', 14, 'dropdown icon')} 24 24 <div class="menu"> ··· 76 76 $dialog.find('.comment-diff-data').removeClass('is-loading').html(resp.diffHtml); 77 77 // there is only one option "item[data-option-item=delete]", so the dropdown can be entirely shown/hidden. 78 78 if (resp.canSoftDelete) { 79 - $dialog.find('.dialog-header-options').removeClass('gt-hidden'); 79 + $dialog.find('.dialog-header-options').removeClass('tw-hidden'); 80 80 } 81 81 } catch (error) { 82 82 console.error('Error:', error);
+14 -14
web_src/js/features/repo-issue.js
··· 222 222 $(document).on('click', '.cancel-code-comment', (e) => { 223 223 const $form = $(e.currentTarget).closest('form'); 224 224 if ($form.length > 0 && $form.hasClass('comment-form')) { 225 - $form.addClass('gt-hidden'); 225 + $form.addClass('tw-hidden'); 226 226 showElem($form.closest('.comment-code-cloud').find('button.comment-form-reply')); 227 227 } else { 228 228 $form.closest('.comment-code-cloud').remove(); ··· 397 397 export async function handleReply($el) { 398 398 hideElem($el); 399 399 const $form = $el.closest('.comment-code-cloud').find('.comment-form'); 400 - $form.removeClass('gt-hidden'); 400 + $form.removeClass('tw-hidden'); 401 401 402 402 const $textarea = $form.find('textarea'); 403 403 let editor = getComboMarkdownEditor($textarea); ··· 433 433 if ($diffHeader[0]) { 434 434 offset += $('.diff-detail-box').outerHeight() + $diffHeader.outerHeight(); 435 435 } 436 - $(`#show-outdated-${id}`).addClass('gt-hidden'); 437 - $(`#code-comments-${id}`).removeClass('gt-hidden'); 438 - $(`#code-preview-${id}`).removeClass('gt-hidden'); 439 - $(`#hide-outdated-${id}`).removeClass('gt-hidden'); 436 + $(`#show-outdated-${id}`).addClass('tw-hidden'); 437 + $(`#code-comments-${id}`).removeClass('tw-hidden'); 438 + $(`#code-preview-${id}`).removeClass('tw-hidden'); 439 + $(`#hide-outdated-${id}`).removeClass('tw-hidden'); 440 440 // if the comment box is folded, expand it 441 441 if ($ancestorDiffBox.attr('data-folded') && $ancestorDiffBox.attr('data-folded') === 'true') { 442 442 setFileFolding($ancestorDiffBox[0], $ancestorDiffBox.find('.fold-file')[0], false); ··· 452 452 $(document).on('click', '.show-outdated', function (e) { 453 453 e.preventDefault(); 454 454 const id = $(this).data('comment'); 455 - $(this).addClass('gt-hidden'); 456 - $(`#code-comments-${id}`).removeClass('gt-hidden'); 457 - $(`#code-preview-${id}`).removeClass('gt-hidden'); 458 - $(`#hide-outdated-${id}`).removeClass('gt-hidden'); 455 + $(this).addClass('tw-hidden'); 456 + $(`#code-comments-${id}`).removeClass('tw-hidden'); 457 + $(`#code-preview-${id}`).removeClass('tw-hidden'); 458 + $(`#hide-outdated-${id}`).removeClass('tw-hidden'); 459 459 }); 460 460 461 461 $(document).on('click', '.hide-outdated', function (e) { 462 462 e.preventDefault(); 463 463 const id = $(this).data('comment'); 464 - $(this).addClass('gt-hidden'); 465 - $(`#code-comments-${id}`).addClass('gt-hidden'); 466 - $(`#code-preview-${id}`).addClass('gt-hidden'); 467 - $(`#show-outdated-${id}`).removeClass('gt-hidden'); 464 + $(this).addClass('tw-hidden'); 465 + $(`#code-comments-${id}`).addClass('tw-hidden'); 466 + $(`#code-preview-${id}`).addClass('tw-hidden'); 467 + $(`#show-outdated-${id}`).removeClass('tw-hidden'); 468 468 }); 469 469 470 470 $(document).on('click', 'button.comment-form-reply', async function (e) {
+9 -9
web_src/js/features/repo-legacy.js
··· 31 31 // if there are draft comments, confirm before reloading, to avoid losing comments 32 32 function reloadConfirmDraftComment() { 33 33 const commentTextareas = [ 34 - document.querySelector('.edit-content-zone:not(.gt-hidden) textarea'), 34 + document.querySelector('.edit-content-zone:not(.tw-hidden) textarea'), 35 35 document.querySelector('#comment-form textarea'), 36 36 ]; 37 37 for (const textarea of commentTextareas) { ··· 197 197 $(this).parent().find('.item').each(function () { 198 198 if ($(this).hasClass('checked')) { 199 199 listIds.push($(this).data('id')); 200 - $($(this).data('id-selector')).removeClass('gt-hidden'); 200 + $($(this).data('id-selector')).removeClass('tw-hidden'); 201 201 } else { 202 - $($(this).data('id-selector')).addClass('gt-hidden'); 202 + $($(this).data('id-selector')).addClass('tw-hidden'); 203 203 } 204 204 }); 205 205 if (listIds.length === 0) { 206 - $noSelect.removeClass('gt-hidden'); 206 + $noSelect.removeClass('tw-hidden'); 207 207 } else { 208 - $noSelect.addClass('gt-hidden'); 208 + $noSelect.addClass('tw-hidden'); 209 209 } 210 210 $($(this).parent().data('id')).val(listIds.join(',')); 211 211 return false; ··· 234 234 } 235 235 236 236 $list.find('.item').each(function () { 237 - $(this).addClass('gt-hidden'); 237 + $(this).addClass('tw-hidden'); 238 238 }); 239 - $noSelect.removeClass('gt-hidden'); 239 + $noSelect.removeClass('tw-hidden'); 240 240 $($(this).parent().data('id')).val(''); 241 241 }); 242 242 } ··· 286 286 </a> 287 287 `); 288 288 289 - $(`.ui${select_id}.list .no-select`).addClass('gt-hidden'); 289 + $(`.ui${select_id}.list .no-select`).addClass('tw-hidden'); 290 290 $(input_id).val($(this).data('id')); 291 291 }); 292 292 $menu.find('.no-select.item').on('click', function () { ··· 307 307 } 308 308 309 309 $list.find('.selected').html(''); 310 - $list.find('.no-select').removeClass('gt-hidden'); 310 + $list.find('.no-select').removeClass('tw-hidden'); 311 311 $(input_id).val(''); 312 312 }); 313 313 }
+2 -2
web_src/js/markup/mermaid.js
··· 49 49 iframe.srcdoc = `<html><head><style>${iframeCss}</style></head><body>${svg}</body></html>`; 50 50 51 51 const mermaidBlock = document.createElement('div'); 52 - mermaidBlock.classList.add('mermaid-block', 'is-loading', 'gt-hidden'); 52 + mermaidBlock.classList.add('mermaid-block', 'is-loading', 'tw-hidden'); 53 53 mermaidBlock.append(iframe); 54 54 55 55 const btn = makeCodeCopyButton(); ··· 58 58 59 59 iframe.addEventListener('load', () => { 60 60 pre.replaceWith(mermaidBlock); 61 - mermaidBlock.classList.remove('gt-hidden'); 61 + mermaidBlock.classList.remove('tw-hidden'); 62 62 iframe.style.height = `${iframe.contentWindow.document.body.clientHeight}px`; 63 63 setTimeout(() => { // avoid flash of iframe background 64 64 mermaidBlock.classList.remove('is-loading');
+1 -1
web_src/js/svg.js
··· 213 213 classes.push(...this.className.split(/\s+/).filter(Boolean)); 214 214 } 215 215 if (this.symbolId) { 216 - classes.push('gt-hidden', 'svg-symbol-container'); 216 + classes.push('tw-hidden', 'svg-symbol-container'); 217 217 svgInnerHtml = `<symbol id="${this.symbolId}" viewBox="${attrs['^viewBox']}">${svgInnerHtml}</symbol>`; 218 218 } 219 219 // create VNode
+4 -4
web_src/js/utils/dom.js
··· 22 22 */ 23 23 function toggleShown(el, force) { 24 24 if (force === true) { 25 - el.classList.remove('gt-hidden'); 25 + el.classList.remove('tw-hidden'); 26 26 } else if (force === false) { 27 - el.classList.add('gt-hidden'); 27 + el.classList.add('tw-hidden'); 28 28 } else if (force === undefined) { 29 - el.classList.toggle('gt-hidden'); 29 + el.classList.toggle('tw-hidden'); 30 30 } else { 31 31 throw new Error('invalid force argument'); 32 32 } ··· 46 46 47 47 export function isElemHidden(el) { 48 48 const res = []; 49 - elementsCall(el, (e) => res.push(e.classList.contains('gt-hidden'))); 49 + elementsCall(el, (e) => res.push(e.classList.contains('tw-hidden'))); 50 50 if (res.length > 1) throw new Error(`isElemHidden doesn't work for multiple elements`); 51 51 return res[0]; 52 52 }