From dfb5c2bce553f42a13e2641c5158c476f08988cb Mon Sep 17 00:00:00 2001 From: kyy Date: Mon, 23 Feb 2026 15:19:52 +0900 Subject: [PATCH] =?UTF-8?q?=ED=81=B4=EB=9D=BC=EC=9D=B4=EC=96=B8=ED=8A=B8?= =?UTF-8?q?=20=EC=83=9D=EC=84=B1=EC=9D=BC=20=ED=91=9C=EC=8B=9C=20=EA=B8=B0?= =?UTF-8?q?=EB=8A=A5=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/internal/handler/dev_handler.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/backend/internal/handler/dev_handler.go b/backend/internal/handler/dev_handler.go index 705c3954..9422b802 100644 --- a/backend/internal/handler/dev_handler.go +++ b/backend/internal/handler/dev_handler.go @@ -306,6 +306,7 @@ func (h *DevHandler) CreateClient(c *fiber.Ctx) error { metadata = map[string]interface{}{} } metadata["status"] = status + metadata["created_at"] = time.Now().Format(time.RFC3339) tokenAuthMethod := strings.TrimSpace(valueOr(req.TokenEndpointAuthMethod, "")) if tokenAuthMethod == "" { @@ -683,10 +684,17 @@ func generateRandomSecret(length int) (string, error) { func (h *DevHandler) mapClientSummary(client domain.HydraClient) clientSummary { status := "active" + var createdAt *time.Time + if client.Metadata != nil { if value, ok := client.Metadata["status"].(string); ok && strings.ToLower(value) == "inactive" { status = "inactive" } + if value, ok := client.Metadata["created_at"].(string); ok { + if t, err := time.Parse(time.RFC3339, value); err == nil { + createdAt = &t + } + } } clientType := "private" @@ -732,6 +740,7 @@ func (h *DevHandler) mapClientSummary(client domain.HydraClient) clientSummary { Name: name, Type: clientType, Status: status, + CreatedAt: createdAt, RedirectURIs: client.RedirectURIs, Scopes: scopes, ClientSecret: clientSecret,