Jelajahi Sumber

chore: 参数格式化(str 包)

runningwater 11 bulan lalu
induk
melakukan
4eedf93bda
5 mengubah file dengan 57 tambahan dan 18 penghapusan
  1. 16 15
      CHANGELOG.md
  2. 3 3
      cliff.toml
  3. 2 0
      go.mod
  4. 4 0
      go.sum
  5. 32 0
      pkg/str/str.go

+ 16 - 15
CHANGELOG.md

@@ -4,15 +4,16 @@
 
 ## [未发布]
 
-### ⚙️ 杂项任务
+### ⚙️ 辅助工具的变动
 
-- Console 包
+- Changelog file
 - Git-cliff generator changelog files
+- Console 包
 
 ### 🐛 Bug 修复
 
-- Import package update
 - Panic Recovery
+- Import package update
 
 ### 📚 文档更新
 
@@ -20,19 +21,19 @@
 
 ### 🚀 新功能
 
-- 手机是否注册接口
-- Email 是否已注册接口
-- HTTP 访问日志
-- Panic Recovery
-- 数据库请求日志
-- 使用 Redis
-- Email+邮件验证码注册
-- 手机+短信验证码登陆
-- 账号登陆
-- Guest 中间件
-- 命令行模式
-- Key  命令
 - Play 命令,做调试使用
+- Key  命令
+- 命令行模式
+- Guest 中间件
+- 账号登陆
+- 手机+短信验证码登陆
+- Email+邮件验证码注册
+- 使用 Redis
+- 数据库请求日志
+- Panic Recovery
+- HTTP 访问日志
+- Email 是否已注册接口
+- 手机是否注册接口
 
 ### 🚜 代码重构
 

+ 3 - 3
cliff.toml

@@ -79,7 +79,7 @@ commit_parsers = [
   { message = "^test", group = "🧪 测试相关" },
   { message = "^build", group = "📦 构建系统" },
   { message = "^ci", group = "🔧 CI 配置" },
-  { message = "^chore", group = "⚙️ 杂项任务" },
+  { message = "^chore", group = "⚙️ 辅助工具的变动" },
   { message = "^revert", group = "◀️ 回滚变更" },
   { message = "^security", group = "🛡️ 安全相关" },
   { message = "^wip", group = "🚧 进行中" },
@@ -96,7 +96,7 @@ commit_parsers = [
 filter_commits = false
 
 # 按拓扑顺序排序标签
-topo_order = false
+topo_order = true
 
 # 按提交时间排序(oldest 或 newest)
-sort_commits = "oldest"
+sort_commits = "newest"

+ 2 - 0
go.mod

@@ -8,9 +8,11 @@ require (
 	github.com/alibabacloud-go/tea v1.3.8
 	github.com/alibabacloud-go/tea-utils/v2 v2.0.7
 	github.com/aliyun/credentials-go v1.4.5
+	github.com/gertd/go-pluralize v0.2.1
 	github.com/gin-gonic/gin v1.10.0
 	github.com/go-redis/redis v6.15.9+incompatible
 	github.com/golang-jwt/jwt/v5 v5.2.2
+	github.com/iancoleman/strcase v0.3.0
 	github.com/jordan-wright/email v4.0.1-0.20210109023952-943e75fe5223+incompatible
 	github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d
 	github.com/mojocn/base64Captcha v1.3.8

+ 4 - 0
go.sum

@@ -81,6 +81,8 @@ github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/
 github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
 github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0=
 github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk=
+github.com/gertd/go-pluralize v0.2.1 h1:M3uASbVjMnTsPb0PNqg+E/24Vwigyo/tvyMTtAlLgiA=
+github.com/gertd/go-pluralize v0.2.1/go.mod h1:rbYaKDbsXxmRfr8uygAEKhOWsjyrrqrkHVpZvoOp8zk=
 github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE=
 github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=
 github.com/gin-gonic/gin v1.10.0 h1:nTuyha1TYqgedzytsKYqna+DfLos46nTv2ygFy86HFU=
@@ -131,6 +133,8 @@ github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLe
 github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
 github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
 github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
+github.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI=
+github.com/iancoleman/strcase v0.3.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho=
 github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc=
 github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
 github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=

+ 32 - 0
pkg/str/str.go

@@ -0,0 +1,32 @@
+// Package str 字符串辅助方法
+package str
+
+import (
+	"github.com/gertd/go-pluralize"
+	"github.com/iancoleman/strcase"
+)
+
+// Plural 复数处理 eg: user => users
+func Plural(word string) string {
+	return pluralize.NewClient().Plural(word)
+}
+
+// Singular 单数处理 eg: users => user
+func Singular(word string) string {
+	return pluralize.NewClient().Singular(word)
+}
+
+// Snake 蛇形命名 eg: UserName => user_name
+func Snake(word string) string {
+	return strcase.ToSnake(word)
+}
+
+// Camel 驼峰命名 eg: user_name => UserName
+func Camel(word string) string {
+	return strcase.ToCamel(word)
+}
+
+// LowerCamel 小驼峰命名 eg: UserName => userName
+func LowerCamel(word string) string {
+	return strcase.ToLowerCamel(word)
+}