forked from x/icebergs
opt name
This commit is contained in:
parent
220d14faf7
commit
8a203b52ae
2
base.go
2
base.go
@ -32,6 +32,8 @@ func (f *Frame) Begin(m *Message, arg ...string) Server {
|
|||||||
return f
|
return f
|
||||||
}
|
}
|
||||||
func (f *Frame) Start(m *Message, arg ...string) bool {
|
func (f *Frame) Start(m *Message, arg ...string) bool {
|
||||||
|
m.Cap(CTX_STATUS, "start")
|
||||||
|
m.Cap(CTX_STREAM, strings.Split(m.Time(), " ")[1])
|
||||||
m.Log(LOG_START, "ice")
|
m.Log(LOG_START, "ice")
|
||||||
m.Cmd(ICE_INIT).Cmd("init", arg)
|
m.Cmd(ICE_INIT).Cmd("init", arg)
|
||||||
m.root.Cost("start")
|
m.root.Cost("start")
|
||||||
|
@ -10,7 +10,7 @@ import (
|
|||||||
"sort"
|
"sort"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "ctx", Help: "元始模块",
|
var Index = &ice.Context{Name: "ctx", Help: "配置模块",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
ice.CTX_CONFIG: {Name: "config", Help: "配置", Value: kit.Data("path", "var/conf")},
|
ice.CTX_CONFIG: {Name: "config", Help: "配置", Value: kit.Data("path", "var/conf")},
|
||||||
|
@ -136,7 +136,7 @@ func dir(m *ice.Message, root string, name string, level int, deep bool, dir_typ
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "nfs", Help: "文件模块",
|
var Index = &ice.Context{Name: "nfs", Help: "存储模块",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{},
|
Configs: map[string]*ice.Config{},
|
||||||
Commands: map[string]*ice.Command{
|
Commands: map[string]*ice.Command{
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "tcp", Help: "网络模块",
|
var Index = &ice.Context{Name: "tcp", Help: "通信模块",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{},
|
Configs: map[string]*ice.Config{},
|
||||||
Commands: map[string]*ice.Command{
|
Commands: map[string]*ice.Command{
|
||||||
|
@ -352,7 +352,7 @@ func (web *Frame) Close(m *ice.Message, arg ...string) bool {
|
|||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "web", Help: "网页模块",
|
var Index = &ice.Context{Name: "web", Help: "网络模块",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
ice.WEB_SPIDE: {Name: "spide", Help: "蜘蛛侠", Value: kit.Data(kit.MDB_SHORT, "client.name")},
|
ice.WEB_SPIDE: {Name: "spide", Help: "蜘蛛侠", Value: kit.Data(kit.MDB_SHORT, "client.name")},
|
||||||
@ -814,7 +814,7 @@ var Index = &ice.Context{Name: "web", Help: "网页模块",
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 任务列表
|
// 任务列表
|
||||||
m.Cmdy("nfs.dir", m.Conf(ice.WEB_DREAM, "meta.path"), "", "time name")
|
m.Cmdy("nfs.dir", m.Conf(ice.WEB_DREAM, "meta.path"), "time name")
|
||||||
m.Table(func(index int, value map[string]string, head []string) {
|
m.Table(func(index int, value map[string]string, head []string) {
|
||||||
if m.Richs(ice.WEB_SPACE, nil, value["name"], func(key string, value map[string]interface{}) {
|
if m.Richs(ice.WEB_SPACE, nil, value["name"], func(key string, value map[string]interface{}) {
|
||||||
m.Push("type", value["type"])
|
m.Push("type", value["type"])
|
||||||
|
@ -14,6 +14,8 @@ var Index = &ice.Context{Name: "chat", Help: "聊天中心",
|
|||||||
},
|
},
|
||||||
Commands: map[string]*ice.Command{
|
Commands: map[string]*ice.Command{
|
||||||
ice.ICE_INIT: {Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
ice.ICE_INIT: {Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
||||||
|
m.Cap(ice.CTX_STATUS, "start")
|
||||||
|
m.Cap(ice.CTX_STREAM, "volcanos")
|
||||||
m.Cmd(ice.CTX_CONFIG, "load", "chat.json")
|
m.Cmd(ice.CTX_CONFIG, "load", "chat.json")
|
||||||
m.Watch(ice.SYSTEM_INIT, "web.chat.init")
|
m.Watch(ice.SYSTEM_INIT, "web.chat.init")
|
||||||
m.Watch(ice.USER_CREATE, "web.chat./tutor", "init")
|
m.Watch(ice.USER_CREATE, "web.chat./tutor", "init")
|
||||||
|
@ -26,7 +26,7 @@ CMD sh bin/boot.sh
|
|||||||
|
|
||||||
`
|
`
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "code", Help: "编程模块",
|
var Index = &ice.Context{Name: "code", Help: "编程中心",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
"login": {Name: "login", Help: "登录", Value: kit.Data()},
|
"login": {Name: "login", Help: "登录", Value: kit.Data()},
|
||||||
|
@ -11,7 +11,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "mall", Help: "团队模块",
|
var Index = &ice.Context{Name: "mall", Help: "贸易中心",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
"railway": {Name: "railway", Help: "12306", Value: kit.Data()},
|
"railway": {Name: "railway", Help: "12306", Value: kit.Data()},
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "team", Help: "团队模块",
|
var Index = &ice.Context{Name: "team", Help: "团队中心",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
ice.APP_MISS: {Name: "miss", Help: "任务", Value: kit.Data(
|
ice.APP_MISS: {Name: "miss", Help: "任务", Value: kit.Data(
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
package wiki
|
package wiki
|
||||||
|
|
||||||
var title = `<span class="story" data-type="{{.Option "type"}}" data-name="{{.Option "prefix"}}" data-text="{{.Option "text"}}">{{.Option "prefix"}}{{.Option "content"}}</span>`
|
var title = `<{{.Option "level"}} class="story" data-type="{{.Option "type"}}" data-name="{{.Option "prefix"}}" data-text="{{.Option "text"}}">{{.Option "prefix"}}{{.Option "content"}}</{{.Option "level"}}>`
|
||||||
|
var brief = `<p class="story" data-type="{{.Option "type"}}" data-name="{{.Option "name"}}" data-text="{{.Option "input"}}">{{.Option "text"}}</p>`
|
||||||
|
var refer = `<ul class="story"
|
||||||
|
data-type="{{.Option "type"}}" data-name="{{.Option "name"}}" data-text="{{.Option "text"}}">
|
||||||
|
{{range $index, $value := .Optionv "list"}}<li>{{$value}}</li>{{end}}</ul>`
|
||||||
|
var spark = `<p>{{.}}</p>`
|
||||||
|
|
||||||
var shell = `<div class="story code" data-type="{{.Option "type"}}" data-name="{{.Option "name"}}" data-text="{{.Option "input"}}">$ {{.Option "input"}}
|
var shell = `<div class="story code" data-type="{{.Option "type"}}" data-name="{{.Option "name"}}" data-text="{{.Option "input"}}">$ {{.Option "input"}}
|
||||||
{{.Option "output"}}</div>`
|
{{.Option "output"}}</div>`
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package wiki
|
package wiki
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/gomarkdown/markdown"
|
|
||||||
"github.com/shylinux/icebergs"
|
"github.com/shylinux/icebergs"
|
||||||
_ "github.com/shylinux/icebergs/base"
|
_ "github.com/shylinux/icebergs/base"
|
||||||
"github.com/shylinux/icebergs/base/web"
|
"github.com/shylinux/icebergs/base/web"
|
||||||
@ -13,7 +12,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "wiki", Help: "文档模块",
|
var Index = &ice.Context{Name: "wiki", Help: "文档中心",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
"note": {Name: "note", Help: "笔记", Value: kit.Data(
|
"note": {Name: "note", Help: "笔记", Value: kit.Data(
|
||||||
@ -29,6 +28,10 @@ var Index = &ice.Context{Name: "wiki", Help: "文档模块",
|
|||||||
},
|
},
|
||||||
)},
|
)},
|
||||||
"title": {Name: "title", Help: "标题", Value: kit.Data("template", title)},
|
"title": {Name: "title", Help: "标题", Value: kit.Data("template", title)},
|
||||||
|
"brief": {Name: "brief", Help: "摘要", Value: kit.Data("template", brief)},
|
||||||
|
"refer": {Name: "refer", Help: "参考", Value: kit.Data("template", refer)},
|
||||||
|
"spark": {Name: "spark", Help: "段落", Value: kit.Data("template", spark)},
|
||||||
|
|
||||||
"shell": {Name: "shell", Help: "命令", Value: kit.Data("template", shell)},
|
"shell": {Name: "shell", Help: "命令", Value: kit.Data("template", shell)},
|
||||||
"order": {Name: "order", Help: "列表", Value: kit.Data("template", order)},
|
"order": {Name: "order", Help: "列表", Value: kit.Data("template", order)},
|
||||||
"table": {Name: "table", Help: "表格", Value: kit.Data("template", table)},
|
"table": {Name: "table", Help: "表格", Value: kit.Data("template", table)},
|
||||||
@ -95,16 +98,40 @@ var Index = &ice.Context{Name: "wiki", Help: "文档模块",
|
|||||||
m.Option("type", "shell")
|
m.Option("type", "shell")
|
||||||
m.Option("name", arg[0])
|
m.Option("name", arg[0])
|
||||||
m.Option("cmd_dir", arg[1])
|
m.Option("cmd_dir", arg[1])
|
||||||
switch arg[1] {
|
|
||||||
case "-demo":
|
switch arg = arg[2:]; arg[0] {
|
||||||
m.Option("input", strings.Join(arg[2:], " "))
|
case "install", "compile":
|
||||||
|
m.Option("input", strings.Join(arg[1:], " "))
|
||||||
default:
|
default:
|
||||||
m.Option("output", m.Cmdx("cli.system", "sh", "-c", m.Option("input", strings.Join(arg[2:], " "))))
|
m.Option("output", m.Cmdx("cli.system", "sh", "-c", m.Option("input", strings.Join(arg, " "))))
|
||||||
}
|
}
|
||||||
|
m.Render(m.Conf("spark", ice.Meta("template")), m.Option("name"))
|
||||||
m.Render(m.Conf("shell", ice.Meta("template")))
|
m.Render(m.Conf("shell", ice.Meta("template")))
|
||||||
}},
|
}},
|
||||||
|
|
||||||
|
"spark": {Name: "spark name text", Help: "参考", Hand: func(m *ice.Message, c *ice.Context, key string, arg ...string) {
|
||||||
|
m.Option("type", "refer")
|
||||||
|
m.Option("name", arg[0])
|
||||||
|
m.Option("text", arg[1])
|
||||||
|
m.Optionv("list", kit.Split(arg[1], "\n"))
|
||||||
|
m.Render(m.Conf("order", ice.Meta("template")))
|
||||||
|
}},
|
||||||
|
"refer": {Name: "refer name text", Help: "参考", Hand: func(m *ice.Message, c *ice.Context, key string, arg ...string) {
|
||||||
|
m.Option("type", "refer")
|
||||||
|
m.Option("name", arg[0])
|
||||||
|
m.Option("text", arg[1])
|
||||||
|
m.Optionv("list", kit.Split(arg[1], "\n"))
|
||||||
|
m.Render(m.Conf("order", ice.Meta("template")))
|
||||||
|
}},
|
||||||
|
"brief": {Name: "brief text", Help: "摘要", Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
||||||
|
m.Option("type", "brief")
|
||||||
|
m.Option("name", arg[0])
|
||||||
|
m.Option("text", arg[1])
|
||||||
|
m.Render(m.Conf("brief", ice.Meta("template")))
|
||||||
|
}},
|
||||||
"title": {Name: "title text", Help: "标题", Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
"title": {Name: "title text", Help: "标题", Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
||||||
// 生成序号
|
// 生成序号
|
||||||
|
m.Option("level", "h1")
|
||||||
title, _ := m.Optionv("title").(map[string]int)
|
title, _ := m.Optionv("title").(map[string]int)
|
||||||
switch arg[0] {
|
switch arg[0] {
|
||||||
case "endmenu":
|
case "endmenu":
|
||||||
@ -114,10 +141,12 @@ var Index = &ice.Context{Name: "wiki", Help: "文档模块",
|
|||||||
m.Render(premenu)
|
m.Render(premenu)
|
||||||
return
|
return
|
||||||
case "section":
|
case "section":
|
||||||
|
m.Option("level", "h3")
|
||||||
arg = arg[1:]
|
arg = arg[1:]
|
||||||
title["section"]++
|
title["section"]++
|
||||||
m.Option("prefix", fmt.Sprintf("%d.%d ", title["chapter"], title["section"]))
|
m.Option("prefix", fmt.Sprintf("%d.%d ", title["chapter"], title["section"]))
|
||||||
case "chapter":
|
case "chapter":
|
||||||
|
m.Option("level", "h2")
|
||||||
arg = arg[1:]
|
arg = arg[1:]
|
||||||
title["chapter"]++
|
title["chapter"]++
|
||||||
title["section"] = 0
|
title["section"] = 0
|
||||||
@ -160,7 +189,7 @@ var Index = &ice.Context{Name: "wiki", Help: "文档模块",
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 生成网页
|
// 生成网页
|
||||||
m.Echo(string(markdown.ToHTML(buffer.Bytes(), nil, nil)))
|
m.Echo(string(buffer.Bytes()))
|
||||||
}},
|
}},
|
||||||
"_tree": {Name: "_tree path", Help: "文库", Hand: func(m *ice.Message, c *ice.Context, key string, arg ...string) {
|
"_tree": {Name: "_tree path", Help: "文库", Hand: func(m *ice.Message, c *ice.Context, key string, arg ...string) {
|
||||||
m.Option("dir_deep", "true")
|
m.Option("dir_deep", "true")
|
||||||
|
1
go.mod
1
go.mod
@ -3,7 +3,6 @@ module github.com/shylinux/icebergs
|
|||||||
go 1.13
|
go 1.13
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/gomarkdown/markdown v0.0.0-20191207194928-fbea82c4bb03
|
|
||||||
github.com/gorilla/websocket v1.4.1
|
github.com/gorilla/websocket v1.4.1
|
||||||
github.com/shylinux/toolkits v0.1.0
|
github.com/shylinux/toolkits v0.1.0
|
||||||
github.com/skip2/go-qrcode v0.0.0-20191027152451-9434209cb086
|
github.com/skip2/go-qrcode v0.0.0-20191027152451-9434209cb086
|
||||||
|
5
go.sum
5
go.sum
@ -1,11 +1,6 @@
|
|||||||
github.com/gomarkdown/markdown v0.0.0-20191207194928-fbea82c4bb03 h1:m13UZm540+0yrpGOIXd7q4AvPGQPSTo+2jxrBK26o64=
|
|
||||||
github.com/gomarkdown/markdown v0.0.0-20191207194928-fbea82c4bb03/go.mod h1:aii0r/K0ZnHv7G0KF7xy1v0A7s2Ljrb5byB7MO5p6TU=
|
|
||||||
github.com/gorilla/websocket v1.4.1 h1:q7AeDBpnBk8AogcD4DSag/Ukw/KV+YhzLj2bP5HvKCM=
|
github.com/gorilla/websocket v1.4.1 h1:q7AeDBpnBk8AogcD4DSag/Ukw/KV+YhzLj2bP5HvKCM=
|
||||||
github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
||||||
github.com/shylinux/toolkits v0.0.0-20191225132906-3c11db083b5b h1:BXDEMcpHmwuwoqY/NWehDs11GOy2x+2MS7Xfihb3zFY=
|
|
||||||
github.com/shylinux/toolkits v0.0.0-20191225132906-3c11db083b5b/go.mod h1:Y68Ot6xOmo1bun67YvqC3chDGeU2gDxtsUnvVDGJm4g=
|
|
||||||
github.com/shylinux/toolkits v0.1.0 h1:7ghnVEjuwLf7zBsyeR37ahm2gaOKIyjSw9F9Pp9oTBU=
|
github.com/shylinux/toolkits v0.1.0 h1:7ghnVEjuwLf7zBsyeR37ahm2gaOKIyjSw9F9Pp9oTBU=
|
||||||
github.com/shylinux/toolkits v0.1.0/go.mod h1:Y68Ot6xOmo1bun67YvqC3chDGeU2gDxtsUnvVDGJm4g=
|
github.com/shylinux/toolkits v0.1.0/go.mod h1:Y68Ot6xOmo1bun67YvqC3chDGeU2gDxtsUnvVDGJm4g=
|
||||||
github.com/skip2/go-qrcode v0.0.0-20191027152451-9434209cb086 h1:RYiqpb2ii2Z6J4x0wxK46kvPBbFuZcdhS+CIztmYgZs=
|
github.com/skip2/go-qrcode v0.0.0-20191027152451-9434209cb086 h1:RYiqpb2ii2Z6J4x0wxK46kvPBbFuZcdhS+CIztmYgZs=
|
||||||
github.com/skip2/go-qrcode v0.0.0-20191027152451-9434209cb086/go.mod h1:PLPIyL7ikehBD1OAjmKKiOEhbvWyHGaNDjquXMcYABo=
|
github.com/skip2/go-qrcode v0.0.0-20191027152451-9434209cb086/go.mod h1:PLPIyL7ikehBD1OAjmKKiOEhbvWyHGaNDjquXMcYABo=
|
||||||
golang.org/dl v0.0.0-20190829154251-82a15e2f2ead/go.mod h1:IUMfjQLJQd4UTqG1Z90tenwKoCX93Gn3MAQJMOSBsDQ=
|
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "docker", Help: "docker",
|
var Index = &ice.Context{Name: "docker", Help: "容器管理",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
"docker": {Name: "docker", Help: "docker", Value: kit.Data(kit.MDB_SHORT, "name")},
|
"docker": {Name: "docker", Help: "docker", Value: kit.Data(kit.MDB_SHORT, "name")},
|
||||||
|
@ -26,7 +26,7 @@ func (f *Frame) Close(m *ice.Message, arg ...string) bool {
|
|||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
var Index = &ice.Context{Name: "tmux", Help: "终端模块",
|
var Index = &ice.Context{Name: "tmux", Help: "终端管理",
|
||||||
Caches: map[string]*ice.Cache{},
|
Caches: map[string]*ice.Cache{},
|
||||||
Configs: map[string]*ice.Config{
|
Configs: map[string]*ice.Config{
|
||||||
"buffer": {Name: "buffer", Help: "缓存", Value: kit.Data()},
|
"buffer": {Name: "buffer", Help: "缓存", Value: kit.Data()},
|
||||||
|
31
type.go
31
type.go
@ -545,37 +545,18 @@ func (m *Message) Table(cbs ...interface{}) *Message {
|
|||||||
}
|
}
|
||||||
return m
|
return m
|
||||||
}
|
}
|
||||||
func (m *Message) Render(str string) *Message {
|
func (m *Message) Render(str string, arg ...interface{}) *Message {
|
||||||
if res, err := kit.Render(str, m); m.Assert(err) {
|
if len(arg) == 0 {
|
||||||
|
arg = append(arg, m)
|
||||||
|
}
|
||||||
|
if res, err := kit.Render(str, arg[0]); m.Assert(err) {
|
||||||
m.Echo(string(res))
|
m.Echo(string(res))
|
||||||
}
|
}
|
||||||
return m
|
return m
|
||||||
}
|
}
|
||||||
func (m *Message) Split(str string, field string, space string, enter string) *Message {
|
func (m *Message) Split(str string, field string, space string, enter string) *Message {
|
||||||
indexs := []int{}
|
|
||||||
fields := kit.Split(field, space)
|
fields := kit.Split(field, space)
|
||||||
for i, l := range kit.Split(str, enter) {
|
for _, l := range kit.Split(str, enter) {
|
||||||
if i == 0 && (field == "" || field == "index") {
|
|
||||||
fields = kit.Split(l, space)
|
|
||||||
if field == "index" {
|
|
||||||
for _, v := range fields {
|
|
||||||
indexs = append(indexs, strings.Index(l, v))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(indexs) > 0 {
|
|
||||||
for i, v := range indexs {
|
|
||||||
if i == len(indexs)-1 {
|
|
||||||
m.Push(kit.Select("some", fields, i), l[v:])
|
|
||||||
} else {
|
|
||||||
m.Push(kit.Select("some", fields, i), l[v:indexs[i+1]])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
for i, v := range kit.Split(l, space) {
|
for i, v := range kit.Split(l, space) {
|
||||||
m.Push(kit.Select("some", fields, i), v)
|
m.Push(kit.Select("some", fields, i), v)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user