2024-03-16 13:25:30 +00:00
|
|
|
{lib, ...}: let
|
2024-03-15 12:01:46 +00:00
|
|
|
inherit (lib) mkOption mkEnableOption;
|
2024-03-16 13:25:30 +00:00
|
|
|
inherit (lib.types) enum int str attrsOf;
|
2023-11-07 00:50:27 +00:00
|
|
|
in {
|
2023-04-03 09:12:05 +00:00
|
|
|
options.vim.notify.nvim-notify = {
|
2023-06-05 20:10:25 +00:00
|
|
|
enable = mkEnableOption "nvim-notify notifications";
|
2023-04-03 09:12:05 +00:00
|
|
|
stages = mkOption {
|
2024-03-16 13:25:30 +00:00
|
|
|
type = enum ["fade_in_slide_out" "fade_in" "slide_out" "none"];
|
2023-04-03 09:12:05 +00:00
|
|
|
default = "fade_in_slide_out";
|
|
|
|
description = "The stages of the notification";
|
|
|
|
};
|
2023-06-05 20:10:25 +00:00
|
|
|
|
2023-04-03 09:12:05 +00:00
|
|
|
timeout = mkOption {
|
2024-03-16 13:25:30 +00:00
|
|
|
type = int;
|
2023-04-03 09:12:05 +00:00
|
|
|
default = 1000;
|
|
|
|
description = "The timeout of the notification";
|
|
|
|
};
|
2023-06-05 20:10:25 +00:00
|
|
|
|
2023-04-03 09:12:05 +00:00
|
|
|
background_colour = mkOption {
|
2024-03-16 13:25:30 +00:00
|
|
|
type = str;
|
2023-04-03 09:12:05 +00:00
|
|
|
default = "#000000";
|
|
|
|
description = "The background colour of the notification";
|
|
|
|
};
|
2023-06-05 20:10:25 +00:00
|
|
|
|
2023-04-03 09:12:05 +00:00
|
|
|
position = mkOption {
|
2024-03-16 13:25:30 +00:00
|
|
|
type = enum ["top_left" "top_right" "bottom_left" "bottom_right"];
|
2023-04-03 09:12:05 +00:00
|
|
|
default = "top_right";
|
|
|
|
description = "The position of the notification";
|
|
|
|
};
|
2023-06-05 20:10:25 +00:00
|
|
|
|
2023-04-03 09:12:05 +00:00
|
|
|
icons = mkOption {
|
2024-03-16 13:25:30 +00:00
|
|
|
type = attrsOf str;
|
2023-06-05 20:10:25 +00:00
|
|
|
description = "The icons of the notification";
|
2023-04-03 09:12:05 +00:00
|
|
|
default = {
|
|
|
|
ERROR = "";
|
|
|
|
WARN = "";
|
|
|
|
INFO = "";
|
|
|
|
DEBUG = "";
|
|
|
|
TRACE = "";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|