108 lines
3.2 KiB
Swift
108 lines
3.2 KiB
Swift
//
|
||
// config.swift
|
||
// AIGrammar
|
||
//
|
||
// Created by oscar on 2024/3/28.
|
||
//
|
||
|
||
import Foundation
|
||
import SwiftUI
|
||
|
||
/*
|
||
class GlobalConfig : ObservableObject{
|
||
@Published var backgroundColor : UInt = 0xFFE4E1
|
||
|
||
}
|
||
*/
|
||
|
||
class GlobalEnvironment: ObservableObject {
|
||
@Published var backgroundColor : UInt = 0xFFE4E1
|
||
|
||
init(){
|
||
SetEnv(isSandBox: false, isTestEnv: false)
|
||
}
|
||
|
||
@Published var deviceID: String = ""
|
||
@Published var userID: String = ""
|
||
@Published var userName: String = ""
|
||
@Published var GID: Int = 0
|
||
@Published var isVip:Bool = false
|
||
|
||
// APP 信息
|
||
let APPID = "6504465465"
|
||
|
||
// toast 展示事件
|
||
let toastPresentMsNormal = 1.5
|
||
let toastPresentMsLong = 3.0
|
||
let toastPresentMsShot = 0.5
|
||
|
||
// 定义各功能的输入长度限制
|
||
let MaxLenGrammarCheckFree = 200
|
||
let MaxLenGrammarCheckVIP = 2000
|
||
let MaxLenWords = 50
|
||
let MaxLenTranslate = 200
|
||
|
||
// 错误码及错误提示定义
|
||
let RetCodeFreeLimited = 101000
|
||
let RetCodeDirtyInput = 101001
|
||
let GrammarCheckOK = 102000
|
||
let GrammarOKToast = "Congratulations! There are no errors in your input."
|
||
let FreeLimitedToast = "Your free usage has been used up. Please upgrade to PREMIUM for unlimited usage."
|
||
let NetWorkErrToast = "Network Error. Please try again later."
|
||
let OtherServerErrToast = "Sorry, something went wrong on the server. Please try again later."
|
||
let DirtyInputErrToast = "The text you entered contains content that does not comply with regulations. Please re-enter."
|
||
|
||
var jwtSecret: String = "mCTf-JhNRnhaaGJy_x"
|
||
|
||
var userTermsURL: String = "https://grammar.easyprompt8.com/about/terms.html"
|
||
var userPrivacyURL: String = "https://grammar.easyprompt8.com/about/privacy.html"
|
||
|
||
// 请求地址,区分环境。
|
||
// var baseHost: String = "http://192.168.2.2:1080"
|
||
var baseHost: String = "https://api.easyprompt8.com"
|
||
|
||
// 业务请求URL
|
||
var feedbackURL: String { "\(baseHost)/grammar/feedback" }
|
||
var translateURL: String { "\(baseHost)/grammar/translate" }
|
||
var dictURL: String { "\(baseHost)/grammar/words" }
|
||
var grammarURL: String { "\(baseHost)/grammar/grammar" }
|
||
|
||
// 用户请求URL
|
||
var userURL: String { "\(baseHost)/user/get" }
|
||
|
||
// 验证appstore购买
|
||
var iapVerifyURL : String { "\(baseHost)/iap/verify" }
|
||
|
||
// 设置运行环境
|
||
func SetEnv(isSandBox: Bool, isTestEnv: Bool){
|
||
if(isTestEnv){
|
||
self.baseHost = "https://dev.easyprompt8.com"
|
||
}else {
|
||
self.baseHost = "https://api.easyprompt8.com"
|
||
}
|
||
logger.info("baseHost: \(self.baseHost)")
|
||
// 以后定义SandBox的功能,主要是商品列表的区分。
|
||
}
|
||
|
||
}
|
||
|
||
// 全局实例
|
||
let globalEnvironment = GlobalEnvironment()
|
||
|
||
|
||
class GlobalAnalyticsEvents: ObservableObject {
|
||
let eventPurchase = "purchase"
|
||
let eventEnterPurchase = "enter_purchase_page"
|
||
|
||
let keyPurchaseEntry = "purchase_entry_point"
|
||
let keyPurchaseItem = "purchase_product_id"
|
||
let keyDeviceID = "device_id"
|
||
|
||
let valEntryBuyProBtn = "buy_pro_btn"
|
||
let valEntrySettingsBtn = "settings_buy_btn"
|
||
}
|
||
|
||
let globalAnalyticsEvents = GlobalAnalyticsEvents()
|
||
|
||
|