From 3f348b90c221a76a43207607537a4b571326517a Mon Sep 17 00:00:00 2001 From: harveyshao Date: Sat, 30 Apr 2022 02:06:12 +0800 Subject: [PATCH] opt some --- README.md | 2 +- go.mod | 19 +++++++++++++++++ go.sum | 33 +++++++++++++++-------------- src/debug/go.mod | 4 +++- src/debug/go.sum | 16 ++++++++++++++ src/hi/hi.go | 12 +++++++++++ src/hi/hi.js | 54 +++++++++++++++++++++++++++++++++++++++++------- src/main.go | 1 - 8 files changed, 114 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 9f7fe988..0fa98c61 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ contexts 通过集群化、模块化、自动化的方式,用一个 20M 的程 ## 安装项目 ```sh -ctx_temp=$(mktemp); curl -o $ctx_temp -fsSL https://shylinux.com; source $ctx_temp binary +ctx_temp=$(mktemp); curl -o $ctx_temp -fsSL https://shylinux.com; source $ctx_temp binary port 9020 ``` ## 使用项目 diff --git a/go.mod b/go.mod index 380a4836..3ab21185 100644 --- a/go.mod +++ b/go.mod @@ -5,9 +5,28 @@ go 1.11 require shylinux.com/x/ice v0.9.2 require ( + github.com/kr/pty v1.1.8 // indirect + golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f // indirect shylinux.com/x/golang-story v0.4.0 + shylinux.com/x/icebergs v1.1.9 shylinux.com/x/linux-story v0.3.8 shylinux.com/x/mysql-story v0.4.1 shylinux.com/x/nginx-story v0.4.1 shylinux.com/x/redis-story v0.4.1 + shylinux.com/x/toolkits v0.5.8 + shylinux.com/x/webview v0.0.1 +) + +replace ( + shylinux.com/x/ice => ./usr/release + shylinux.com/x/icebergs => ./usr/icebergs + shylinux.com/x/toolkits => ./usr/toolkits +) + +replace ( + shylinux.com/x/golang-story => ./usr/golang-story + shylinux.com/x/linux-story => ./usr/linux-story + shylinux.com/x/mysql-story => ./usr/mysql-story + shylinux.com/x/nginx-story => ./usr/nginx-story + shylinux.com/x/redis-story => ./usr/redis-story ) diff --git a/go.sum b/go.sum index cc2d9aea..e5815a26 100644 --- a/go.sum +++ b/go.sum @@ -1,22 +1,23 @@ +github.com/creack/pty v1.1.7 h1:6pwm8kMQKCmgUg0ZHTm5+/YvRK0s3THD/28+T6/kk4A= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/kr/pty v1.1.8 h1:AkaSdXYQOWeaO3neb8EM634ahkXXe3jYbVh/F9lq+GI= +github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f h1:OeJjE6G4dgCY4PIXvIRQbE8+RX+uXZyGhUy/ksMGJoc= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 h1:SrN+KX8Art/Sf4HNj6Zcz06G7VEz+7w9tdXTPOZ7+l4= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= shylinux.com/x/go-qrcode v0.0.1 h1:/eOGqMj1qtgs9Ymd12zTUa1gcJZs9S92kj2lb0QzKsE= shylinux.com/x/go-qrcode v0.0.1/go.mod h1:KAbtU+KwiiABMZ/CJ0zh9PI2AX82Uf9rRYcQ4ODm4po= shylinux.com/x/go-sql-mysql v0.0.1 h1:VX5SrwLBKzfkRouj39LgJ9reIXOWmMsScRpr+e0qdp0= shylinux.com/x/go-sql-mysql v0.0.1/go.mod h1:47OfAZK24HRJMy7dAu/jrksGCf9yzJaAUFwWYjhDFDA= -shylinux.com/x/golang-story v0.4.0 h1:wh1j/QwE+K2P/Lhpu/69Oz7lq4T36uv57Gwn5+cm3js= -shylinux.com/x/golang-story v0.4.0/go.mod h1:YnxxNGf1G5c1YhnJQjJFOBtdH4oVubApJVv/mwR1gzU= -shylinux.com/x/ice v0.9.2 h1:vQJ2Y0XEam0MZPsks0NwReMtBVR520oLV//kAEHPjSA= -shylinux.com/x/ice v0.9.2/go.mod h1:PpQGqtfeQj/MvE/55iDuzdkzN7lcZu7fglI+5/YDudY= -shylinux.com/x/icebergs v1.1.8 h1:s++RU9noOeR+g/oChxKBFV8JtNKWchL/iKzwtiwDsvE= -shylinux.com/x/icebergs v1.1.8/go.mod h1:IWYdPq5nI+Vcr/5m7xvScBM1DyOsQZDDvBa0ffyIOBM= -shylinux.com/x/linux-story v0.3.8 h1:1oAFhhs8p7PRLmg1mrIb6y7xe6IK6E/DQXOjx7n+QrY= -shylinux.com/x/linux-story v0.3.8/go.mod h1:W/QN4t6ZHVaFQ9djKIp824ZAAttZXNexzY7FwsYDU7Y= -shylinux.com/x/mysql-story v0.4.1 h1:6T+bK0IOy9y+lGqWjO1Sv9D1oKy59kMQ5sZVmWJCDdc= -shylinux.com/x/mysql-story v0.4.1/go.mod h1:xgNzoJQSIIO/TnY3VYPeiPJQT2OIMH7ZKepf7YKPvxw= -shylinux.com/x/nginx-story v0.4.1 h1:YUz8f5v4z6gqGT3TZVEiNPRgA8FsCVfmOIOXn+LS5tU= -shylinux.com/x/nginx-story v0.4.1/go.mod h1:WC4YB+BFg+3mDO/zSZk0iMlZOTQ1H1KzAD+0T9/3Gxg= -shylinux.com/x/redis-story v0.4.1 h1:nwsawHizGZoo+rSxkmaJ+JZcrIj7HuOToAZyKYQtcDY= -shylinux.com/x/redis-story v0.4.1/go.mod h1:Uqs1TtW8aFuGhIVxsMNJjATkmIXesbWDUFeegY+Sr0w= -shylinux.com/x/toolkits v0.5.8 h1:8MhHLmglPTPiXAdUgAJXx+gOxJoQzmpNeC7QzsZcjJw= -shylinux.com/x/toolkits v0.5.8/go.mod h1:8LbYHe7oxBIqb6s4MSOD+4d28QvPdvkyCVtwB/JW7AA= shylinux.com/x/websocket v0.0.1 h1:OBc21DxqsGlQ2+Pz76xqLyDNo1LV+PUUqfWi+1PZPDE= shylinux.com/x/websocket v0.0.1/go.mod h1:AaSpMToOxbMULKQytzczeHPuqb708vK1vrAzCxLo/XE= +shylinux.com/x/webview v0.0.1 h1:84waIh8MnBFA2sCA9CqE2aTGBZz26pS7JlizgKi9IGU= +shylinux.com/x/webview v0.0.1/go.mod h1:4QYVOgAZyyoCghh0ByuAXqfcuFWCJQY3F7Ss2x3N/cQ= diff --git a/src/debug/go.mod b/src/debug/go.mod index 447dc53e..3ab21185 100644 --- a/src/debug/go.mod +++ b/src/debug/go.mod @@ -5,8 +5,10 @@ go 1.11 require shylinux.com/x/ice v0.9.2 require ( + github.com/kr/pty v1.1.8 // indirect + golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f // indirect shylinux.com/x/golang-story v0.4.0 - shylinux.com/x/icebergs v1.1.8 + shylinux.com/x/icebergs v1.1.9 shylinux.com/x/linux-story v0.3.8 shylinux.com/x/mysql-story v0.4.1 shylinux.com/x/nginx-story v0.4.1 diff --git a/src/debug/go.sum b/src/debug/go.sum index 715483bb..e5815a26 100644 --- a/src/debug/go.sum +++ b/src/debug/go.sum @@ -1,7 +1,23 @@ +github.com/creack/pty v1.1.7 h1:6pwm8kMQKCmgUg0ZHTm5+/YvRK0s3THD/28+T6/kk4A= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/kr/pty v1.1.8 h1:AkaSdXYQOWeaO3neb8EM634ahkXXe3jYbVh/F9lq+GI= +github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f h1:OeJjE6G4dgCY4PIXvIRQbE8+RX+uXZyGhUy/ksMGJoc= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 h1:SrN+KX8Art/Sf4HNj6Zcz06G7VEz+7w9tdXTPOZ7+l4= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= shylinux.com/x/go-qrcode v0.0.1 h1:/eOGqMj1qtgs9Ymd12zTUa1gcJZs9S92kj2lb0QzKsE= shylinux.com/x/go-qrcode v0.0.1/go.mod h1:KAbtU+KwiiABMZ/CJ0zh9PI2AX82Uf9rRYcQ4ODm4po= shylinux.com/x/go-sql-mysql v0.0.1 h1:VX5SrwLBKzfkRouj39LgJ9reIXOWmMsScRpr+e0qdp0= shylinux.com/x/go-sql-mysql v0.0.1/go.mod h1:47OfAZK24HRJMy7dAu/jrksGCf9yzJaAUFwWYjhDFDA= shylinux.com/x/websocket v0.0.1 h1:OBc21DxqsGlQ2+Pz76xqLyDNo1LV+PUUqfWi+1PZPDE= shylinux.com/x/websocket v0.0.1/go.mod h1:AaSpMToOxbMULKQytzczeHPuqb708vK1vrAzCxLo/XE= +shylinux.com/x/webview v0.0.1 h1:84waIh8MnBFA2sCA9CqE2aTGBZz26pS7JlizgKi9IGU= shylinux.com/x/webview v0.0.1/go.mod h1:4QYVOgAZyyoCghh0ByuAXqfcuFWCJQY3F7Ss2x3N/cQ= diff --git a/src/hi/hi.go b/src/hi/hi.go index 12e1a72c..c915b9ff 100644 --- a/src/hi/hi.go +++ b/src/hi/hi.go @@ -2,6 +2,7 @@ package hi import ( "shylinux.com/x/ice" + "shylinux.com/x/icebergs/base/ctx" ) type hi struct { @@ -10,6 +11,17 @@ type hi struct { list string `name:"list zone id auto insert" help:"示例"` } +func (h hi) Command(m *ice.Message, arg ...string) { + if !m.PodCmd(ctx.COMMAND, arg) { + m.Cmdy(ctx.COMMAND, arg) + } +} +func (h hi) Run(m *ice.Message, arg ...string) { + if m.Right(arg) && !m.PodCmd(arg) { + m.Debug("what %v", arg) + m.Cmdy(arg) + } +} func (h hi) List(m *ice.Message, arg ...string) { h.Zone.List(m, arg...) } diff --git a/src/hi/hi.js b/src/hi/hi.js index f4be311f..2e8be3b2 100644 --- a/src/hi/hi.js +++ b/src/hi/hi.js @@ -1,10 +1,48 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, cb, target) { - msg.Push("hi", "hello") - msg.Push("he", "hello") - msg.Echo("hello world!\n") - msg.Echo("hello world!\n") - msg.Echo("hello world!\n") - - can.onmotion.clear(can), can.base.isFunc(cb) && cb(msg) - can.onappend.table(can, msg), can.onappend.board(can, msg) + can.onappend.parse(can, [ + {type: "head", style: {height: 320}, list: [ + {type: "head", list: ["基础配置", "高级配置", "导航配置"]}, + {type: "left", list: [{type: "tabs", list: [ + {name: "地址", list: [ + {name: "山东省", list: ["邹城市", "济南市", "青岛市"]}, + {name: "江苏省", list: [ + {type: "plugin", name: "徐州市", index: "cli.runtime"}, + {type: "plugin", name: "南京市", index: "cli.qrcode"}, + ]}, + {name: "北京市", list: ["海淀区", "朝阳区", "西城区", "东城区"]}, + {name: "广东省", list: [ + {name: "深圳市", list: ["宝安区", "南山区", "福田区", "龙华区"]}, "茂名市", + ]}, + ]}, + {name: "组件", list: ["2", "2", "3"]}, + {name: "数据"}, + ]}]}, + {type: "main"}, + "foot", + ]}, + {type: "head", style: {height: 320}, list: [ + "head", + {type: "left", list: [{type: "tabs", style: "left", list: [ + {name: "布局", list: ["空中楼阁1", "空中楼阁2", "空中楼阁3", "空中楼阁4", "空中楼阁5"]}, + {name: "列表", list: ["分页器1", "分页器2", "分页器3", "分页器4", "分页器"]}, + {name: "表单"}, + {name: "按钮"}, + {name: "输入"}, + ]}]}, + {type: "main"}, + "foot", + ]}, + {type: "head", style: {height: 200}, list: [ + "head", + {type: "left", list: [{type: "tabs", style: "void", list: [ + {name: "布局", list: ["空中楼阁1", "空中楼阁2", "空中楼阁3", "空中楼阁4"]}, + {name: "列表", list: ["分页器1", "分页器2", "分页器3"]}, + {name: "表单"}, + {name: "按钮"}, + {name: "输入"}, + ]}]}, + {type: "main"}, + "foot", + ]} + ], target) }}) diff --git a/src/main.go b/src/main.go index a2ff5029..f0da3a80 100644 --- a/src/main.go +++ b/src/main.go @@ -4,7 +4,6 @@ import ( _ "shylinux.com/x/contexts/src/hi" "shylinux.com/x/ice" - _ "shylinux.com/x/icebergs/misc/alpha" _ "shylinux.com/x/icebergs/misc/chrome" _ "shylinux.com/x/icebergs/misc/input"