# ./modules/users/psljr/hyprlock.nix
# Configure hyprlock for user psljr

{ config, pkgs, ... }:

{
  home-manager.users.psljr = { pkgs, ... }: {
    programs.hyprlock = {
      enable = true;

      settings = {
        general = {
          hide_cursor = false;
          ignore_empty_input = true;
        };

        auth = {
          pam = {
            enabled = true;
          };

          fingerprint = {
            enabled = true;
            ready_message = "Scan fingerprint to unlock...";
            present_message = "Authenticating...";
            retry_delay = 250;
          };
        };

        animations = {
          enabled = true;
          fade_in = {
            duration = 300;
            bezier = "easeOutQuint";
          };
          fade_out = {
            duration = 300;
            bezier = "easeOutQuint";
          };
        };

        background = [
          {
            path = "/etc/nixos/modules/users/psljr/theme/wallpaper.jpg";
            blur_passes = 3;
            blur_size = 8;
          }
        ];

        input-field = [
          {
            monitor = "";
            size = "200, 50";
            position = "0, -80";
            dots_center = true;
            font_color = "rgb(202, 211, 245)";
            inner_color = "rgb(91, 96, 120)";
            outer_color = "rgb(24, 25, 38)";
            outline_thickness = 5;
            shadow_passes = 2;
            placeholder_text = "Password...";
            hide_input = false;
            halign = "center";
          }
        ];
      };
    };
  };
}
