index_templ.go 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664
  1. // Code generated by templ - DO NOT EDIT.
  2. // templ: version: v0.3.960
  3. package web
  4. //lint:file-ignore SA4006 This context is only used if a nested component is present.
  5. import "github.com/a-h/templ"
  6. import templruntime "github.com/a-h/templ/runtime"
  7. import (
  8. "fmt"
  9. "github.com/TecharoHQ/anubis"
  10. "github.com/TecharoHQ/anubis/lib/config"
  11. "github.com/TecharoHQ/anubis/lib/localization"
  12. "github.com/TecharoHQ/anubis/xess"
  13. "github.com/google/uuid"
  14. )
  15. func base(title string, body templ.Component, impressum *config.Impressum, challenge any, ogTags map[string]string, localizer *localization.SimpleLocalizer) templ.Component {
  16. return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
  17. templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
  18. if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
  19. return templ_7745c5c3_CtxErr
  20. }
  21. templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
  22. if !templ_7745c5c3_IsBuffer {
  23. defer func() {
  24. templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
  25. if templ_7745c5c3_Err == nil {
  26. templ_7745c5c3_Err = templ_7745c5c3_BufErr
  27. }
  28. }()
  29. }
  30. ctx = templ.InitializeContext(ctx)
  31. templ_7745c5c3_Var1 := templ.GetChildren(ctx)
  32. if templ_7745c5c3_Var1 == nil {
  33. templ_7745c5c3_Var1 = templ.NopComponent
  34. }
  35. ctx = templ.ClearChildren(ctx)
  36. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 1, "<!doctype html><html lang=\"")
  37. if templ_7745c5c3_Err != nil {
  38. return templ_7745c5c3_Err
  39. }
  40. var templ_7745c5c3_Var2 string
  41. templ_7745c5c3_Var2, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.GetLang())
  42. if templ_7745c5c3_Err != nil {
  43. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 14, Col: 33}
  44. }
  45. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var2))
  46. if templ_7745c5c3_Err != nil {
  47. return templ_7745c5c3_Err
  48. }
  49. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 2, "\"><head><title>")
  50. if templ_7745c5c3_Err != nil {
  51. return templ_7745c5c3_Err
  52. }
  53. var templ_7745c5c3_Var3 string
  54. templ_7745c5c3_Var3, templ_7745c5c3_Err = templ.JoinStringErrs(title)
  55. if templ_7745c5c3_Err != nil {
  56. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 16, Col: 17}
  57. }
  58. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var3))
  59. if templ_7745c5c3_Err != nil {
  60. return templ_7745c5c3_Err
  61. }
  62. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 3, "</title><link rel=\"stylesheet\" href=\"")
  63. if templ_7745c5c3_Err != nil {
  64. return templ_7745c5c3_Err
  65. }
  66. var templ_7745c5c3_Var4 templ.SafeURL
  67. templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinURLErrs(anubis.BasePrefix + xess.URL)
  68. if templ_7745c5c3_Err != nil {
  69. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 17, Col: 61}
  70. }
  71. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4))
  72. if templ_7745c5c3_Err != nil {
  73. return templ_7745c5c3_Err
  74. }
  75. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 4, "\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><meta name=\"robots\" content=\"noindex,nofollow\">")
  76. if templ_7745c5c3_Err != nil {
  77. return templ_7745c5c3_Err
  78. }
  79. for key, value := range ogTags {
  80. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 5, "<meta property=\"")
  81. if templ_7745c5c3_Err != nil {
  82. return templ_7745c5c3_Err
  83. }
  84. var templ_7745c5c3_Var5 string
  85. templ_7745c5c3_Var5, templ_7745c5c3_Err = templ.JoinStringErrs(key)
  86. if templ_7745c5c3_Err != nil {
  87. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 21, Col: 24}
  88. }
  89. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var5))
  90. if templ_7745c5c3_Err != nil {
  91. return templ_7745c5c3_Err
  92. }
  93. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 6, "\" content=\"")
  94. if templ_7745c5c3_Err != nil {
  95. return templ_7745c5c3_Err
  96. }
  97. var templ_7745c5c3_Var6 string
  98. templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs(value)
  99. if templ_7745c5c3_Err != nil {
  100. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 21, Col: 42}
  101. }
  102. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
  103. if templ_7745c5c3_Err != nil {
  104. return templ_7745c5c3_Err
  105. }
  106. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 7, "\">")
  107. if templ_7745c5c3_Err != nil {
  108. return templ_7745c5c3_Err
  109. }
  110. }
  111. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 8, "<style>\n body,\n html {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n margin-left: auto;\n margin-right: auto;\n }\n\n .centered-div {\n text-align: center;\n }\n\n #status {\n font-variant-numeric: tabular-nums;\n }\n\n #progress {\n display: none;\n width: 90%;\n width: min(20rem, 90%);\n height: 2rem;\n border-radius: 1rem;\n overflow: hidden;\n margin: 1rem 0 2rem;\n outline-offset: 2px;\n outline: #b16286 solid 4px;\n }\n\n .bar-inner {\n background-color: #b16286;\n height: 100%;\n width: 0;\n transition: width 0.25s ease-in;\n }\n \t</style>")
  112. if templ_7745c5c3_Err != nil {
  113. return templ_7745c5c3_Err
  114. }
  115. templ_7745c5c3_Err = templ.JSONScript("anubis_version", anubis.Version).Render(ctx, templ_7745c5c3_Buffer)
  116. if templ_7745c5c3_Err != nil {
  117. return templ_7745c5c3_Err
  118. }
  119. templ_7745c5c3_Err = templ.JSONScript("anubis_challenge", challenge).Render(ctx, templ_7745c5c3_Buffer)
  120. if templ_7745c5c3_Err != nil {
  121. return templ_7745c5c3_Err
  122. }
  123. templ_7745c5c3_Err = templ.JSONScript("anubis_base_prefix", anubis.BasePrefix).Render(ctx, templ_7745c5c3_Buffer)
  124. if templ_7745c5c3_Err != nil {
  125. return templ_7745c5c3_Err
  126. }
  127. templ_7745c5c3_Err = templ.JSONScript("anubis_public_url", anubis.PublicUrl).Render(ctx, templ_7745c5c3_Buffer)
  128. if templ_7745c5c3_Err != nil {
  129. return templ_7745c5c3_Err
  130. }
  131. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 9, "</head><body id=\"top\">")
  132. if templ_7745c5c3_Err != nil {
  133. return templ_7745c5c3_Err
  134. }
  135. templ_7745c5c3_Err = honeypotLink(anubis.BasePrefix+fmt.Sprintf("%shoneypot/%s/init", anubis.APIPrefix, uuid.NewString())).Render(ctx, templ_7745c5c3_Buffer)
  136. if templ_7745c5c3_Err != nil {
  137. return templ_7745c5c3_Err
  138. }
  139. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 10, "<main><h1 id=\"title\" class=\"centered-div\">")
  140. if templ_7745c5c3_Err != nil {
  141. return templ_7745c5c3_Err
  142. }
  143. var templ_7745c5c3_Var7 string
  144. templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs(title)
  145. if templ_7745c5c3_Err != nil {
  146. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 69, Col: 47}
  147. }
  148. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7))
  149. if templ_7745c5c3_Err != nil {
  150. return templ_7745c5c3_Err
  151. }
  152. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 11, "</h1>")
  153. if templ_7745c5c3_Err != nil {
  154. return templ_7745c5c3_Err
  155. }
  156. templ_7745c5c3_Err = body.Render(ctx, templ_7745c5c3_Buffer)
  157. if templ_7745c5c3_Err != nil {
  158. return templ_7745c5c3_Err
  159. }
  160. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 12, "<footer><div class=\"centered-div\"><p>")
  161. if templ_7745c5c3_Err != nil {
  162. return templ_7745c5c3_Err
  163. }
  164. var templ_7745c5c3_Var8 string
  165. templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("protected_by"))
  166. if templ_7745c5c3_Err != nil {
  167. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 74, Col: 36}
  168. }
  169. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var8))
  170. if templ_7745c5c3_Err != nil {
  171. return templ_7745c5c3_Err
  172. }
  173. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 13, " <a href=\"https://github.com/TecharoHQ/anubis\">Anubis</a> ")
  174. if templ_7745c5c3_Err != nil {
  175. return templ_7745c5c3_Err
  176. }
  177. var templ_7745c5c3_Var9 string
  178. templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("protected_from"))
  179. if templ_7745c5c3_Err != nil {
  180. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 74, Col: 127}
  181. }
  182. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var9))
  183. if templ_7745c5c3_Err != nil {
  184. return templ_7745c5c3_Err
  185. }
  186. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 14, " <a href=\"https://techaro.lol\">Techaro</a></p>")
  187. if templ_7745c5c3_Err != nil {
  188. return templ_7745c5c3_Err
  189. }
  190. if impressum != nil {
  191. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 15, "<p>")
  192. if templ_7745c5c3_Err != nil {
  193. return templ_7745c5c3_Err
  194. }
  195. templ_7745c5c3_Err = templ.Raw(impressum.Footer).Render(ctx, templ_7745c5c3_Buffer)
  196. if templ_7745c5c3_Err != nil {
  197. return templ_7745c5c3_Err
  198. }
  199. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 16, "-- <a href=\"")
  200. if templ_7745c5c3_Err != nil {
  201. return templ_7745c5c3_Err
  202. }
  203. var templ_7745c5c3_Var10 templ.SafeURL
  204. templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(anubis.BasePrefix + fmt.Sprintf("%simprint", anubis.APIPrefix)))
  205. if templ_7745c5c3_Err != nil {
  206. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 81, Col: 98}
  207. }
  208. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var10))
  209. if templ_7745c5c3_Err != nil {
  210. return templ_7745c5c3_Err
  211. }
  212. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 17, "\">Imprint</a></p>")
  213. if templ_7745c5c3_Err != nil {
  214. return templ_7745c5c3_Err
  215. }
  216. }
  217. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 18, "<p>")
  218. if templ_7745c5c3_Err != nil {
  219. return templ_7745c5c3_Err
  220. }
  221. var templ_7745c5c3_Var11 string
  222. templ_7745c5c3_Var11, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("version_info"))
  223. if templ_7745c5c3_Err != nil {
  224. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 84, Col: 38}
  225. }
  226. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var11))
  227. if templ_7745c5c3_Err != nil {
  228. return templ_7745c5c3_Err
  229. }
  230. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 19, " <code>")
  231. if templ_7745c5c3_Err != nil {
  232. return templ_7745c5c3_Err
  233. }
  234. var templ_7745c5c3_Var12 string
  235. templ_7745c5c3_Var12, templ_7745c5c3_Err = templ.JoinStringErrs(anubis.Version)
  236. if templ_7745c5c3_Err != nil {
  237. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 84, Col: 63}
  238. }
  239. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var12))
  240. if templ_7745c5c3_Err != nil {
  241. return templ_7745c5c3_Err
  242. }
  243. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 20, "</code></p></div></footer></main></body></html>")
  244. if templ_7745c5c3_Err != nil {
  245. return templ_7745c5c3_Err
  246. }
  247. return nil
  248. })
  249. }
  250. func errorPage(message, mail, code string, localizer *localization.SimpleLocalizer) templ.Component {
  251. return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
  252. templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
  253. if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
  254. return templ_7745c5c3_CtxErr
  255. }
  256. templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
  257. if !templ_7745c5c3_IsBuffer {
  258. defer func() {
  259. templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
  260. if templ_7745c5c3_Err == nil {
  261. templ_7745c5c3_Err = templ_7745c5c3_BufErr
  262. }
  263. }()
  264. }
  265. ctx = templ.InitializeContext(ctx)
  266. templ_7745c5c3_Var13 := templ.GetChildren(ctx)
  267. if templ_7745c5c3_Var13 == nil {
  268. templ_7745c5c3_Var13 = templ.NopComponent
  269. }
  270. ctx = templ.ClearChildren(ctx)
  271. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 21, "<div class=\"centered-div\"><img id=\"image\" alt=\"Sad Anubis\" style=\"width:100%;max-width:256px;\" src=\"")
  272. if templ_7745c5c3_Err != nil {
  273. return templ_7745c5c3_Err
  274. }
  275. var templ_7745c5c3_Var14 string
  276. templ_7745c5c3_Var14, templ_7745c5c3_Err = templ.JoinStringErrs(anubis.BasePrefix + "/.within.website/x/cmd/anubis/static/img/reject.webp?cacheBuster=" + anubis.Version)
  277. if templ_7745c5c3_Err != nil {
  278. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 94, Col: 181}
  279. }
  280. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var14))
  281. if templ_7745c5c3_Err != nil {
  282. return templ_7745c5c3_Err
  283. }
  284. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 22, "\"><p>")
  285. if templ_7745c5c3_Err != nil {
  286. return templ_7745c5c3_Err
  287. }
  288. var templ_7745c5c3_Var15 string
  289. templ_7745c5c3_Var15, templ_7745c5c3_Err = templ.JoinStringErrs(message)
  290. if templ_7745c5c3_Err != nil {
  291. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 95, Col: 14}
  292. }
  293. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var15))
  294. if templ_7745c5c3_Err != nil {
  295. return templ_7745c5c3_Err
  296. }
  297. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 23, ".</p>")
  298. if templ_7745c5c3_Err != nil {
  299. return templ_7745c5c3_Err
  300. }
  301. if code != "" {
  302. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 24, "<code><pre>")
  303. if templ_7745c5c3_Err != nil {
  304. return templ_7745c5c3_Err
  305. }
  306. var templ_7745c5c3_Var16 string
  307. templ_7745c5c3_Var16, templ_7745c5c3_Err = templ.JoinStringErrs(code)
  308. if templ_7745c5c3_Err != nil {
  309. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 97, Col: 20}
  310. }
  311. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var16))
  312. if templ_7745c5c3_Err != nil {
  313. return templ_7745c5c3_Err
  314. }
  315. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 25, "</pre></code> ")
  316. if templ_7745c5c3_Err != nil {
  317. return templ_7745c5c3_Err
  318. }
  319. }
  320. if mail != "" {
  321. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 26, "<p><a href=\"/\">")
  322. if templ_7745c5c3_Err != nil {
  323. return templ_7745c5c3_Err
  324. }
  325. var templ_7745c5c3_Var17 string
  326. templ_7745c5c3_Var17, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("go_home"))
  327. if templ_7745c5c3_Err != nil {
  328. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 101, Col: 40}
  329. }
  330. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var17))
  331. if templ_7745c5c3_Err != nil {
  332. return templ_7745c5c3_Err
  333. }
  334. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 27, "</a> ")
  335. if templ_7745c5c3_Err != nil {
  336. return templ_7745c5c3_Err
  337. }
  338. var templ_7745c5c3_Var18 string
  339. templ_7745c5c3_Var18, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("contact_webmaster"))
  340. if templ_7745c5c3_Err != nil {
  341. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 101, Col: 81}
  342. }
  343. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var18))
  344. if templ_7745c5c3_Err != nil {
  345. return templ_7745c5c3_Err
  346. }
  347. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 28, " <a href=\"")
  348. if templ_7745c5c3_Err != nil {
  349. return templ_7745c5c3_Err
  350. }
  351. var templ_7745c5c3_Var19 templ.SafeURL
  352. templ_7745c5c3_Var19, templ_7745c5c3_Err = templ.JoinURLErrs("mailto:" + templ.SafeURL(mail))
  353. if templ_7745c5c3_Err != nil {
  354. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 102, Col: 45}
  355. }
  356. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var19))
  357. if templ_7745c5c3_Err != nil {
  358. return templ_7745c5c3_Err
  359. }
  360. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 29, "\">")
  361. if templ_7745c5c3_Err != nil {
  362. return templ_7745c5c3_Err
  363. }
  364. var templ_7745c5c3_Var20 string
  365. templ_7745c5c3_Var20, templ_7745c5c3_Err = templ.JoinStringErrs(mail)
  366. if templ_7745c5c3_Err != nil {
  367. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 103, Col: 11}
  368. }
  369. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var20))
  370. if templ_7745c5c3_Err != nil {
  371. return templ_7745c5c3_Err
  372. }
  373. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 30, "</a></p>")
  374. if templ_7745c5c3_Err != nil {
  375. return templ_7745c5c3_Err
  376. }
  377. } else {
  378. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 31, "<p><a href=\"/\">")
  379. if templ_7745c5c3_Err != nil {
  380. return templ_7745c5c3_Err
  381. }
  382. var templ_7745c5c3_Var21 string
  383. templ_7745c5c3_Var21, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("go_home"))
  384. if templ_7745c5c3_Err != nil {
  385. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 107, Col: 42}
  386. }
  387. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var21))
  388. if templ_7745c5c3_Err != nil {
  389. return templ_7745c5c3_Err
  390. }
  391. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 32, "</a></p>")
  392. if templ_7745c5c3_Err != nil {
  393. return templ_7745c5c3_Err
  394. }
  395. }
  396. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 33, "</div>")
  397. if templ_7745c5c3_Err != nil {
  398. return templ_7745c5c3_Err
  399. }
  400. return nil
  401. })
  402. }
  403. func StaticHappy(localizer *localization.SimpleLocalizer) templ.Component {
  404. return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
  405. templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
  406. if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
  407. return templ_7745c5c3_CtxErr
  408. }
  409. templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
  410. if !templ_7745c5c3_IsBuffer {
  411. defer func() {
  412. templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
  413. if templ_7745c5c3_Err == nil {
  414. templ_7745c5c3_Err = templ_7745c5c3_BufErr
  415. }
  416. }()
  417. }
  418. ctx = templ.InitializeContext(ctx)
  419. templ_7745c5c3_Var22 := templ.GetChildren(ctx)
  420. if templ_7745c5c3_Var22 == nil {
  421. templ_7745c5c3_Var22 = templ.NopComponent
  422. }
  423. ctx = templ.ClearChildren(ctx)
  424. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 34, "<div class=\"centered-div\"><img style=\"display:none;\" style=\"width:100%;max-width:256px;\" src=\"")
  425. if templ_7745c5c3_Err != nil {
  426. return templ_7745c5c3_Err
  427. }
  428. var templ_7745c5c3_Var23 string
  429. templ_7745c5c3_Var23, templ_7745c5c3_Err = templ.JoinStringErrs("/.within.website/x/cmd/anubis/static/img/happy.webp?cacheBuster=" +
  430. anubis.Version)
  431. if templ_7745c5c3_Err != nil {
  432. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 118, Col: 18}
  433. }
  434. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var23))
  435. if templ_7745c5c3_Err != nil {
  436. return templ_7745c5c3_Err
  437. }
  438. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 35, "\"><p>")
  439. if templ_7745c5c3_Err != nil {
  440. return templ_7745c5c3_Err
  441. }
  442. var templ_7745c5c3_Var24 string
  443. templ_7745c5c3_Var24, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("static_check_endpoint"))
  444. if templ_7745c5c3_Err != nil {
  445. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 120, Col: 43}
  446. }
  447. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var24))
  448. if templ_7745c5c3_Err != nil {
  449. return templ_7745c5c3_Err
  450. }
  451. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 36, "</p></div>")
  452. if templ_7745c5c3_Err != nil {
  453. return templ_7745c5c3_Err
  454. }
  455. return nil
  456. })
  457. }
  458. func bench(localizer *localization.SimpleLocalizer) templ.Component {
  459. return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
  460. templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
  461. if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
  462. return templ_7745c5c3_CtxErr
  463. }
  464. templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
  465. if !templ_7745c5c3_IsBuffer {
  466. defer func() {
  467. templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
  468. if templ_7745c5c3_Err == nil {
  469. templ_7745c5c3_Err = templ_7745c5c3_BufErr
  470. }
  471. }()
  472. }
  473. ctx = templ.InitializeContext(ctx)
  474. templ_7745c5c3_Var25 := templ.GetChildren(ctx)
  475. if templ_7745c5c3_Var25 == nil {
  476. templ_7745c5c3_Var25 = templ.NopComponent
  477. }
  478. ctx = templ.ClearChildren(ctx)
  479. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 37, "<div style=\"height:20rem;display:flex\"><table style=\"margin-top:1rem;display:grid;grid-template:auto 1fr/auto auto;gap:0 0.5rem\"><thead style=\"border-bottom:1px solid black;padding:0.25rem 0;display:grid;grid-template:1fr/subgrid;grid-column:1/-1\"><tr id=\"table-header\" style=\"display:contents\"><th style=\"width:4.5rem\">")
  480. if templ_7745c5c3_Err != nil {
  481. return templ_7745c5c3_Err
  482. }
  483. var templ_7745c5c3_Var26 string
  484. templ_7745c5c3_Var26, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("time"))
  485. if templ_7745c5c3_Err != nil {
  486. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 131, Col: 51}
  487. }
  488. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var26))
  489. if templ_7745c5c3_Err != nil {
  490. return templ_7745c5c3_Err
  491. }
  492. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 38, "</th><th style=\"width:4rem\">")
  493. if templ_7745c5c3_Err != nil {
  494. return templ_7745c5c3_Err
  495. }
  496. var templ_7745c5c3_Var27 string
  497. templ_7745c5c3_Var27, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("iters"))
  498. if templ_7745c5c3_Err != nil {
  499. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 132, Col: 50}
  500. }
  501. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var27))
  502. if templ_7745c5c3_Err != nil {
  503. return templ_7745c5c3_Err
  504. }
  505. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 39, "</th></tr><tr id=\"table-header-compare\" style=\"display:none\"><th style=\"width:4.5rem\">")
  506. if templ_7745c5c3_Err != nil {
  507. return templ_7745c5c3_Err
  508. }
  509. var templ_7745c5c3_Var28 string
  510. templ_7745c5c3_Var28, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("time_a"))
  511. if templ_7745c5c3_Err != nil {
  512. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 135, Col: 53}
  513. }
  514. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var28))
  515. if templ_7745c5c3_Err != nil {
  516. return templ_7745c5c3_Err
  517. }
  518. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 40, "</th><th style=\"width:4rem\">")
  519. if templ_7745c5c3_Err != nil {
  520. return templ_7745c5c3_Err
  521. }
  522. var templ_7745c5c3_Var29 string
  523. templ_7745c5c3_Var29, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("iters_a"))
  524. if templ_7745c5c3_Err != nil {
  525. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 136, Col: 52}
  526. }
  527. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var29))
  528. if templ_7745c5c3_Err != nil {
  529. return templ_7745c5c3_Err
  530. }
  531. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 41, "</th><th style=\"width:4.5rem\">")
  532. if templ_7745c5c3_Err != nil {
  533. return templ_7745c5c3_Err
  534. }
  535. var templ_7745c5c3_Var30 string
  536. templ_7745c5c3_Var30, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("time_b"))
  537. if templ_7745c5c3_Err != nil {
  538. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 137, Col: 53}
  539. }
  540. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var30))
  541. if templ_7745c5c3_Err != nil {
  542. return templ_7745c5c3_Err
  543. }
  544. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 42, "</th><th style=\"width:4rem\">")
  545. if templ_7745c5c3_Err != nil {
  546. return templ_7745c5c3_Err
  547. }
  548. var templ_7745c5c3_Var31 string
  549. templ_7745c5c3_Var31, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("iters_b"))
  550. if templ_7745c5c3_Err != nil {
  551. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 138, Col: 52}
  552. }
  553. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var31))
  554. if templ_7745c5c3_Err != nil {
  555. return templ_7745c5c3_Err
  556. }
  557. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 43, "</th></tr></thead> <tbody id=\"results\" style=\"padding-top:0.25rem;display:grid;grid-template-columns:subgrid;grid-auto-rows:min-content;grid-column:1/-1;row-gap:0.25rem;overflow-y:auto;font-variant-numeric:tabular-nums\"></tbody></table><div class=\"centered-div\"><img id=\"image\" style=\"width:100%;max-width:256px;\" src=\"")
  558. if templ_7745c5c3_Err != nil {
  559. return templ_7745c5c3_Err
  560. }
  561. var templ_7745c5c3_Var32 string
  562. templ_7745c5c3_Var32, templ_7745c5c3_Err = templ.JoinStringErrs(anubis.BasePrefix + "/.within.website/x/cmd/anubis/static/img/pensive.webp?cacheBuster=" + anubis.Version)
  563. if templ_7745c5c3_Err != nil {
  564. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 147, Col: 166}
  565. }
  566. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var32))
  567. if templ_7745c5c3_Err != nil {
  568. return templ_7745c5c3_Err
  569. }
  570. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 44, "\"><p id=\"status\" style=\"max-width:256px\">")
  571. if templ_7745c5c3_Err != nil {
  572. return templ_7745c5c3_Err
  573. }
  574. var templ_7745c5c3_Var33 string
  575. templ_7745c5c3_Var33, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("loading"))
  576. if templ_7745c5c3_Err != nil {
  577. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 148, Col: 66}
  578. }
  579. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var33))
  580. if templ_7745c5c3_Err != nil {
  581. return templ_7745c5c3_Err
  582. }
  583. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 45, "</p><script async type=\"module\" src=\"")
  584. if templ_7745c5c3_Err != nil {
  585. return templ_7745c5c3_Err
  586. }
  587. var templ_7745c5c3_Var34 string
  588. templ_7745c5c3_Var34, templ_7745c5c3_Err = templ.JoinStringErrs(anubis.BasePrefix + "/.within.website/x/cmd/anubis/static/js/bench.mjs?cacheBuster=" + anubis.Version)
  589. if templ_7745c5c3_Err != nil {
  590. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 149, Col: 138}
  591. }
  592. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var34))
  593. if templ_7745c5c3_Err != nil {
  594. return templ_7745c5c3_Err
  595. }
  596. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 46, "\"></script><div id=\"sparkline\"></div><noscript><p>")
  597. if templ_7745c5c3_Err != nil {
  598. return templ_7745c5c3_Err
  599. }
  600. var templ_7745c5c3_Var35 string
  601. templ_7745c5c3_Var35, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("benchmark_requires_js"))
  602. if templ_7745c5c3_Err != nil {
  603. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 152, Col: 45}
  604. }
  605. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var35))
  606. if templ_7745c5c3_Err != nil {
  607. return templ_7745c5c3_Err
  608. }
  609. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 47, "</p></noscript></div></div><form id=\"controls\" style=\"position:fixed;top:0.5rem;right:0.5rem\"><div style=\"display:flex;justify-content:end\"><label for=\"difficulty-input\" style=\"margin-right:0.5rem\">")
  610. if templ_7745c5c3_Err != nil {
  611. return templ_7745c5c3_Err
  612. }
  613. var templ_7745c5c3_Var36 string
  614. templ_7745c5c3_Var36, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("difficulty"))
  615. if templ_7745c5c3_Err != nil {
  616. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 158, Col: 88}
  617. }
  618. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var36))
  619. if templ_7745c5c3_Err != nil {
  620. return templ_7745c5c3_Err
  621. }
  622. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 48, "</label> <input id=\"difficulty-input\" type=\"number\" name=\"difficulty\" style=\"width:3rem\"></div><div style=\"margin-top:0.25rem;display:flex;justify-content:end\"><label for=\"algorithm-select\" style=\"margin-right:0.5rem\">")
  623. if templ_7745c5c3_Err != nil {
  624. return templ_7745c5c3_Err
  625. }
  626. var templ_7745c5c3_Var37 string
  627. templ_7745c5c3_Var37, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("algorithm"))
  628. if templ_7745c5c3_Err != nil {
  629. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 162, Col: 87}
  630. }
  631. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var37))
  632. if templ_7745c5c3_Err != nil {
  633. return templ_7745c5c3_Err
  634. }
  635. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 49, "</label> <select id=\"algorithm-select\" name=\"algorithm\"></select></div><div style=\"margin-top:0.25rem;display:flex;justify-content:end\"><label for=\"compare-select\" style=\"margin-right:0.5rem\">")
  636. if templ_7745c5c3_Err != nil {
  637. return templ_7745c5c3_Err
  638. }
  639. var templ_7745c5c3_Var38 string
  640. templ_7745c5c3_Var38, templ_7745c5c3_Err = templ.JoinStringErrs(localizer.T("compare"))
  641. if templ_7745c5c3_Err != nil {
  642. return templ.Error{Err: templ_7745c5c3_Err, FileName: `index.templ`, Line: 166, Col: 83}
  643. }
  644. _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var38))
  645. if templ_7745c5c3_Err != nil {
  646. return templ_7745c5c3_Err
  647. }
  648. templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 50, "</label> <select id=\"compare-select\" name=\"compare\"><option value=\"NONE\">-</option></select></div></form>")
  649. if templ_7745c5c3_Err != nil {
  650. return templ_7745c5c3_Err
  651. }
  652. return nil
  653. })
  654. }
  655. var _ = templruntime.GeneratedTemplate