public static function normalizeModule($module)
    {
        $module = (string) $module;

        if (isset(static::$moduleNames[$module])) {
            return static::$moduleNames[$module];
        }
        $normalized = trim(str_replace('\\', '/', $module), '/');

        $result = strtolower(
            preg_replace('/([a-zA-Z])(?=[A-Z])/', '$1-', $normalized)
        );
        static::$moduleNames[$module] = $result;

        return $result;
    }