fix: update module path and all imports to saeederamy/3x-ui fork

- Update go.mod module path from mhsanaei/3x-ui/v3 to saeederamy/3x-ui/v3
- Update all 73 Go files' import paths accordingly
- Fix README.fa_IR.md install command to point to fork's main branch

The fork was referencing the original repo's module path in go.mod and all
Go source imports, making it dependent on MHSanaei's namespace at build time.

https://claude.ai/code/session_01M6d5atbWjuLTj6UwRHoK5m
This commit is contained in:
Claude 2026-05-18 20:18:52 +00:00
parent 88ae7e44b5
commit aa90303d92
No known key found for this signature in database
75 changed files with 223 additions and 223 deletions

View file

@ -25,7 +25,7 @@
## شروع سریع
```
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
bash <(curl -Ls https://raw.githubusercontent.com/saeederamy/3x-ui/main/install.sh)
```
برای مستندات کامل، لطفاً به [ویکی پروژه](https://github.com/MHSanaei/3x-ui/wiki) مراجعه کنید.

View file

@ -12,10 +12,10 @@ import (
"slices"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/util/crypto"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/util/crypto"
"github.com/saeederamy/3x-ui/v3/xray"
"gorm.io/driver/sqlite"
"gorm.io/gorm"

View file

@ -4,8 +4,8 @@ package model
import (
"fmt"
"github.com/mhsanaei/3x-ui/v3/util/json_util"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/util/json_util"
"github.com/saeederamy/3x-ui/v3/xray"
)
// Protocol represents the protocol type for Xray inbounds.

2
go.mod
View file

@ -1,4 +1,4 @@
module github.com/mhsanaei/3x-ui/v3
module github.com/saeederamy/3x-ui/v3
go 1.26.3

View file

@ -9,7 +9,7 @@ import (
"runtime"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/op/go-logging"
)

18
main.go
View file

@ -11,15 +11,15 @@ import (
"syscall"
_ "unsafe"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/sub"
"github.com/mhsanaei/3x-ui/v3/util/crypto"
"github.com/mhsanaei/3x-ui/v3/util/sys"
"github.com/mhsanaei/3x-ui/v3/web"
"github.com/mhsanaei/3x-ui/v3/web/global"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/sub"
"github.com/saeederamy/3x-ui/v3/util/crypto"
"github.com/saeederamy/3x-ui/v3/util/sys"
"github.com/saeederamy/3x-ui/v3/web"
"github.com/saeederamy/3x-ui/v3/web/global"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/joho/godotenv"
"github.com/op/go-logging"

View file

@ -3,8 +3,8 @@ package sub
import (
"strings"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/web/service"
)
type LinkProvider struct {

View file

@ -14,12 +14,12 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/locale"
"github.com/mhsanaei/3x-ui/v3/web/middleware"
"github.com/mhsanaei/3x-ui/v3/web/network"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/locale"
"github.com/saeederamy/3x-ui/v3/web/middleware"
"github.com/saeederamy/3x-ui/v3/web/network"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/gin-gonic/gin"
)

View file

@ -7,10 +7,10 @@ import (
"github.com/goccy/go-json"
yaml "github.com/goccy/go-yaml"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/xray"
)
type SubClashService struct {

View file

@ -10,7 +10,7 @@ import (
"strconv"
"strings"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/gin-gonic/gin"
)

View file

@ -7,12 +7,12 @@ import (
"maps"
"strings"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/json_util"
"github.com/mhsanaei/3x-ui/v3/util/random"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/json_util"
"github.com/saeederamy/3x-ui/v3/util/random"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/xray"
)
//go:embed default.json

View file

@ -13,13 +13,13 @@ import (
"github.com/gin-gonic/gin"
"github.com/goccy/go-json"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/util/random"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/util/random"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/xray"
)
// SubService provides business logic for generating subscription links and managing subscription data.

View file

@ -5,7 +5,7 @@ import (
"errors"
"fmt"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/logger"
)
// NewErrorf creates a new error with formatted message.

View file

@ -4,9 +4,9 @@ import (
"net/http"
"strings"
"github.com/mhsanaei/3x-ui/v3/web/middleware"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/web/middleware"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
)

View file

@ -5,9 +5,9 @@ package controller
import (
"net/http"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/locale"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/locale"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
)

View file

@ -5,10 +5,10 @@ import (
"net/http"
"strconv"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/entity"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/entity"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/gin-gonic/gin"
)

View file

@ -10,9 +10,9 @@ import (
"github.com/gin-gonic/gin"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/session"
)
var distFS embed.FS

View file

@ -8,10 +8,10 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/web/websocket"
"github.com/gin-gonic/gin"
)

View file

@ -5,10 +5,10 @@ import (
"text/template"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/middleware"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/middleware"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
)

View file

@ -7,8 +7,8 @@ import (
"strconv"
"time"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/gin-gonic/gin"
)

View file

@ -8,11 +8,11 @@ import (
"strconv"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/entity"
"github.com/mhsanaei/3x-ui/v3/web/global"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/entity"
"github.com/saeederamy/3x-ui/v3/web/global"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/websocket"
"github.com/gin-gonic/gin"
)

View file

@ -4,10 +4,10 @@ import (
"errors"
"time"
"github.com/mhsanaei/3x-ui/v3/util/crypto"
"github.com/mhsanaei/3x-ui/v3/web/entity"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/util/crypto"
"github.com/saeederamy/3x-ui/v3/web/entity"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
)

View file

@ -7,8 +7,8 @@ import (
"net/netip"
"strings"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/entity"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/entity"
"github.com/gin-gonic/gin"
)

View file

@ -6,9 +6,9 @@ import (
"net/url"
"strings"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
ws "github.com/gorilla/websocket"

View file

@ -3,8 +3,8 @@ package controller
import (
"encoding/json"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/gin-gonic/gin"
)

View file

@ -3,9 +3,9 @@ package controller
import (
"net/http"
"github.com/mhsanaei/3x-ui/v3/web/entity"
"github.com/mhsanaei/3x-ui/v3/web/middleware"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/web/entity"
"github.com/saeederamy/3x-ui/v3/web/middleware"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
)

View file

@ -8,7 +8,7 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/util/common"
)
// Msg represents a standard API response message with success status, message text, and optional data object.

View file

@ -13,10 +13,10 @@ import (
"sort"
"time"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/xray"
)
// IPWithTimestamp tracks an IP address with its last seen timestamp

View file

@ -9,9 +9,9 @@ import (
"testing"
"time"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
xuilogger "github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
xuilogger "github.com/saeederamy/3x-ui/v3/logger"
"github.com/op/go-logging"
)

View file

@ -4,7 +4,7 @@ import (
"strconv"
"time"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/shirou/gopsutil/v4/cpu"
)

View file

@ -1,7 +1,7 @@
package job
import (
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/service"
)
// CheckHashStorageJob periodically cleans up expired hash entries from the Telegram bot's hash storage.

View file

@ -3,8 +3,8 @@
package job
import (
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/service"
)
// CheckXrayRunningJob monitors Xray process health and restarts it if it crashes.

View file

@ -5,8 +5,8 @@ import (
"os"
"path/filepath"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/xray"
)
// ClearLogsJob clears old log files to prevent disk space issues.

View file

@ -5,10 +5,10 @@ import (
"strings"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
ldaputil "github.com/mhsanaei/3x-ui/v3/util/ldap"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
ldaputil "github.com/saeederamy/3x-ui/v3/util/ldap"
"github.com/saeederamy/3x-ui/v3/web/service"
"strconv"

View file

@ -5,10 +5,10 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/websocket"
)
const (

View file

@ -5,11 +5,11 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/runtime"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/runtime"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/websocket"
)
const (

View file

@ -1,8 +1,8 @@
package job
import (
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/service"
)
// Period represents the time period for traffic resets.

View file

@ -1,7 +1,7 @@
package job
import (
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/service"
)
// LoginStatus represents the status of a login attempt.

View file

@ -3,10 +3,10 @@ package job
import (
"encoding/json"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/xray"
"github.com/valyala/fasthttp"
)

View file

@ -9,7 +9,7 @@ import (
"os"
"strings"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/gin-gonic/gin"
"github.com/nicksnyder/go-i18n/v2/i18n"

View file

@ -3,7 +3,7 @@ package middleware
import (
"net/http"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-gonic/gin"
)

View file

@ -5,7 +5,7 @@ import (
"net/http/httptest"
"testing"
"github.com/mhsanaei/3x-ui/v3/web/session"
"github.com/saeederamy/3x-ui/v3/web/session"
"github.com/gin-contrib/sessions"
"github.com/gin-contrib/sessions/cookie"

View file

@ -6,8 +6,8 @@ import (
"errors"
"sync"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/xray"
)
type LocalDeps struct {

View file

@ -4,8 +4,8 @@ import (
"errors"
"sync"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
)
type Manager struct {

View file

@ -14,8 +14,8 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
)
const remoteHTTPTimeout = 10 * time.Second

View file

@ -3,7 +3,7 @@ package runtime
import (
"context"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/database/model"
)
type Runtime interface {

View file

@ -14,10 +14,10 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
)
const (

View file

@ -10,7 +10,7 @@ import (
"path/filepath"
"testing"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/database/model"
)
// disableSSRFCheck disables the SSRF guard for the duration of a test,

View file

@ -12,12 +12,12 @@ import (
"time"
"github.com/google/uuid"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/runtime"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/runtime"
"github.com/saeederamy/3x-ui/v3/xray"
"gorm.io/gorm"
"gorm.io/gorm/clause"

View file

@ -10,10 +10,10 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/runtime"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/runtime"
)
type HeartbeatPatch struct {

View file

@ -7,7 +7,7 @@ import (
"net/http"
"time"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/util/common"
)
type NordService struct {

View file

@ -15,12 +15,12 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/json_util"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/json_util"
"github.com/saeederamy/3x-ui/v3/xray"
"gorm.io/gorm"
)

View file

@ -13,8 +13,8 @@ import (
"syscall"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/logger"
)
// PanelService provides business logic for panel management operations.

View file

@ -5,9 +5,9 @@ import (
"fmt"
"strings"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/util/common"
)
// transportBits is a bitmask of L4 transports an inbound listens on.

View file

@ -5,9 +5,9 @@ import (
"sync"
"testing"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
xuilogger "github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
xuilogger "github.com/saeederamy/3x-ui/v3/logger"
"github.com/op/go-logging"
)

View file

@ -19,12 +19,12 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/util/sys"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/util/sys"
"github.com/saeederamy/3x-ui/v3/xray"
"github.com/google/uuid"
"github.com/shirou/gopsutil/v4/cpu"

View file

@ -12,14 +12,14 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/util/random"
"github.com/mhsanaei/3x-ui/v3/util/reflect_util"
"github.com/mhsanaei/3x-ui/v3/web/entity"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/util/random"
"github.com/saeederamy/3x-ui/v3/util/reflect_util"
"github.com/saeederamy/3x-ui/v3/web/entity"
"github.com/saeederamy/3x-ui/v3/xray"
)
//go:embed config.json

View file

@ -22,14 +22,14 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/global"
"github.com/mhsanaei/3x-ui/v3/web/locale"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/global"
"github.com/saeederamy/3x-ui/v3/web/locale"
"github.com/saeederamy/3x-ui/v3/xray"
"github.com/google/uuid"
"github.com/mymmrac/telego"

View file

@ -7,7 +7,7 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/logger"
)
const (

View file

@ -3,11 +3,11 @@ package service
import (
"errors"
"github.com/mhsanaei/3x-ui/v3/database"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/crypto"
ldaputil "github.com/mhsanaei/3x-ui/v3/util/ldap"
"github.com/saeederamy/3x-ui/v3/database"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/crypto"
ldaputil "github.com/saeederamy/3x-ui/v3/util/ldap"
"github.com/xlzd/gotp"
"gorm.io/gorm"
)

View file

@ -9,7 +9,7 @@ import (
"os"
"time"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/util/common"
)
// WarpService provides business logic for Cloudflare WARP integration.

View file

@ -7,9 +7,9 @@ package service
import (
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/websocket"
"github.com/google/uuid"
ws "github.com/gorilla/websocket"

View file

@ -6,8 +6,8 @@ import (
"runtime"
"sync"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/xray"
"go.uber.org/atomic"
)

View file

@ -11,7 +11,7 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/logger"
)
type xrayMetricsState struct {

View file

@ -4,8 +4,8 @@ import (
_ "embed"
"encoding/json"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/xray"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/xray"
)
// XraySettingService provides business logic for Xray configuration management.

View file

@ -5,8 +5,8 @@ import (
"net/http"
"time"
"github.com/mhsanaei/3x-ui/v3/database/model"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/database/model"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/gin-contrib/sessions"
"github.com/gin-gonic/gin"

View file

@ -15,17 +15,17 @@ import (
"strings"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/mhsanaei/3x-ui/v3/web/controller"
"github.com/mhsanaei/3x-ui/v3/web/job"
"github.com/mhsanaei/3x-ui/v3/web/locale"
"github.com/mhsanaei/3x-ui/v3/web/middleware"
"github.com/mhsanaei/3x-ui/v3/web/network"
"github.com/mhsanaei/3x-ui/v3/web/runtime"
"github.com/mhsanaei/3x-ui/v3/web/service"
"github.com/mhsanaei/3x-ui/v3/web/websocket"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/web/controller"
"github.com/saeederamy/3x-ui/v3/web/job"
"github.com/saeederamy/3x-ui/v3/web/locale"
"github.com/saeederamy/3x-ui/v3/web/middleware"
"github.com/saeederamy/3x-ui/v3/web/network"
"github.com/saeederamy/3x-ui/v3/web/runtime"
"github.com/saeederamy/3x-ui/v3/web/service"
"github.com/saeederamy/3x-ui/v3/web/websocket"
"github.com/gin-contrib/gzip"
"github.com/gin-contrib/sessions"

View file

@ -7,7 +7,7 @@ import (
"sync"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/logger"
)
// MessageType identifies the kind of WebSocket message.

View file

@ -2,8 +2,8 @@
package websocket
import (
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/web/global"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/web/global"
)
// GetHub returns the global WebSocket hub instance.

View file

@ -11,8 +11,8 @@ import (
"regexp"
"time"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
"github.com/xtls/xray-core/app/proxyman/command"
statsService "github.com/xtls/xray-core/app/stats/command"

View file

@ -3,7 +3,7 @@ package xray
import (
"bytes"
"github.com/mhsanaei/3x-ui/v3/util/json_util"
"github.com/saeederamy/3x-ui/v3/util/json_util"
)
// Config represents the complete Xray configuration structure.

View file

@ -3,7 +3,7 @@ package xray
import (
"bytes"
"github.com/mhsanaei/3x-ui/v3/util/json_util"
"github.com/saeederamy/3x-ui/v3/util/json_util"
)
// InboundConfig represents an Xray inbound configuration.

View file

@ -5,7 +5,7 @@ import (
"runtime"
"strings"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/logger"
)
// NewLogWriter returns a new LogWriter for processing Xray log output.

View file

@ -14,9 +14,9 @@ import (
"syscall"
"time"
"github.com/mhsanaei/3x-ui/v3/config"
"github.com/mhsanaei/3x-ui/v3/logger"
"github.com/mhsanaei/3x-ui/v3/util/common"
"github.com/saeederamy/3x-ui/v3/config"
"github.com/saeederamy/3x-ui/v3/logger"
"github.com/saeederamy/3x-ui/v3/util/common"
)
// GetBinaryName returns the Xray binary filename for the current OS and architecture.

View file

@ -11,7 +11,7 @@ import (
"testing"
"time"
xuilogger "github.com/mhsanaei/3x-ui/v3/logger"
xuilogger "github.com/saeederamy/3x-ui/v3/logger"
"github.com/op/go-logging"
)