diff --git a/api.go b/api.go index 640758a..c0dac8b 100644 --- a/api.go +++ b/api.go @@ -155,7 +155,9 @@ func (s *Server) TaskTree(context.Context, *emptypb.Empty) (res *pb.TaskTreeResp } })} if job, ok := m.(task.IJob); ok { - res.Blocked = job.Blocked() + if blockedTask := job.Blocked(); blockedTask != nil { + res.Blocked = fillData(blockedTask) + } for t := range job.RangeSubTask { res.Children = append(res.Children, fillData(t)) } @@ -567,7 +569,7 @@ func (s *Server) AddDevice(ctx context.Context, req *pb.DeviceInfo) (res *pb.Suc device := &Device{ server: s, Name: req.Name, - Type: req.Type, + Type: req.Type, PullURL: req.PullURL, ParentID: uint(req.ParentID), } diff --git a/example/custom/config.yaml b/example/custom/config.yaml index 6dff680..f85bbed 100644 --- a/example/custom/config.yaml +++ b/example/custom/config.yaml @@ -7,17 +7,17 @@ rtsp: pull: live/test: rtsp://127.0.0.1:8554/live/test -#transcode: -# onpub: -# transform: -# ^live.+: -# output: -# - target: rtmp://localhost/trans/$0/small -# conf: -loglevel debug -c:a aac -c:v h264 -vf scale=320:240 - -mp4: +transcode: onpub: - record: - ^live/.+: - fragment: 30s - filepath: record/mp4 \ No newline at end of file + transform: + ^live.+: + output: + - target: rtmp://localhost/trans/$0/small + conf: -loglevel debug -c:a aac -c:v h264 -vf scale=320:240 + +#mp4: +# onpub: +# record: +# ^live/.+: +# fragment: 30s +# filepath: record/mp4 \ No newline at end of file diff --git a/example/default/readflv.yaml b/example/default/readflv.yaml index 9e2dff9..b8a1b72 100644 --- a/example/default/readflv.yaml +++ b/example/default/readflv.yaml @@ -1,10 +1,12 @@ global: # loglevel: trace disableall: true +console: + enable: true rtsp: enable: true tcp: :8554 flv: enable: true pull: - live/test: /Users/dexter/Movies/jb-demo.flv \ No newline at end of file + live/test: /Users/dexter/Movies/frame_counter_4k_60fps.flv \ No newline at end of file diff --git a/pb/global.pb.go b/pb/global.pb.go index f0c35b6..87fa297 100644 --- a/pb/global.pb.go +++ b/pb/global.pb.go @@ -770,7 +770,7 @@ type TaskTreeResponse struct { Description map[string]string `protobuf:"bytes,5,rep,name=description,proto3" json:"description,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` Children []*TaskTreeResponse `protobuf:"bytes,6,rep,name=children,proto3" json:"children,omitempty"` State uint32 `protobuf:"varint,7,opt,name=state,proto3" json:"state,omitempty"` - Blocked bool `protobuf:"varint,8,opt,name=blocked,proto3" json:"blocked,omitempty"` + Blocked *TaskTreeResponse `protobuf:"bytes,8,opt,name=blocked,proto3" json:"blocked,omitempty"` } func (x *TaskTreeResponse) Reset() { @@ -854,11 +854,11 @@ func (x *TaskTreeResponse) GetState() uint32 { return 0 } -func (x *TaskTreeResponse) GetBlocked() bool { +func (x *TaskTreeResponse) GetBlocked() *TaskTreeResponse { if x != nil { return x.Blocked } - return false + return nil } type StreamListRequest struct { @@ -2434,7 +2434,7 @@ var file_global_proto_rawDesc = []byte{ 0x70, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, - 0x73, 0x22, 0xf9, 0x02, 0x0a, 0x10, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, + 0x73, 0x22, 0x93, 0x03, 0x0a, 0x10, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, @@ -2452,324 +2452,325 @@ var file_global_proto_rawDesc = []byte{ 0x61, 0x6c, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x1a, 0x3e, 0x0a, - 0x10, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x49, 0x0a, - 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, - 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x12, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x61, 0x74, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x61, + 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x1a, 0x3e, 0x0a, 0x10, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x49, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, + 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, + 0x18, 0x0a, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x8f, 0x01, 0x0a, 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, + 0x57, 0x61, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x3c, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, + 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x61, + 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x37, + 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x33, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x22, 0xb2, 0x02, 0x0a, + 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x12, + 0x36, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x64, + 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x75, 0x64, + 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x36, 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, + 0x54, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6c, + 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, + 0x38, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, + 0x61, 0x22, 0x4c, 0x0a, 0x04, 0x57, 0x72, 0x61, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, + 0xc1, 0x01, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, + 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x38, 0x0a, 0x09, 0x77, + 0x72, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x77, 0x72, 0x69, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x46, 0x72, 0x61, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x46, 0x72, 0x61, 0x6d, + 0x65, 0x12, 0x20, 0x0a, 0x04, 0x77, 0x72, 0x61, 0x70, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0c, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x57, 0x72, 0x61, 0x70, 0x52, 0x04, 0x77, + 0x72, 0x61, 0x70, 0x22, 0x29, 0x0a, 0x0b, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, 0x6f, + 0x63, 0x6b, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x01, 0x73, + 0x12, 0x0c, 0x0a, 0x01, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x01, 0x65, 0x22, 0x4f, + 0x0a, 0x10, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x4d, 0x65, + 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, + 0xb0, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x74, + 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x12, + 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, + 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x70, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x03, 0x62, 0x70, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x03, 0x66, 0x70, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, + 0x52, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x73, 0x22, 0x96, 0x02, 0x0a, 0x15, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, + 0x53, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x04, + 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, + 0x74, 0x52, 0x04, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x69, 0x6e, 0x67, 0x44, + 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, + 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x72, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6c, + 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, + 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x72, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x30, + 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, + 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb4, 0x01, 0x0a, 0x0e, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, + 0x6f, 0x64, 0x65, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, + 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x12, 0x10, + 0x0a, 0x03, 0x62, 0x70, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x62, 0x70, 0x73, + 0x12, 0x10, 0x0a, 0x03, 0x66, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x66, + 0x70, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x12, 0x10, 0x0a, 0x03, 0x67, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, + 0x6f, 0x70, 0x22, 0x3f, 0x0a, 0x0f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x22, 0x1f, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, + 0x74, 0x68, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x02, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x22, 0x6a, + 0x0a, 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, + 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, + 0x50, 0x61, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x7a, 0x0a, 0x12, 0x52, 0x69, + 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, + 0x6c, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x38, 0x0a, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, + 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x52, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x0b, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x53, 0x6e, + 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x0b, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x91, 0x01, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, - 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x8f, 0x01, 0x0a, 0x16, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x61, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x57, 0x61, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, - 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x37, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x33, 0x0a, - 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, - 0x74, 0x68, 0x22, 0xb2, 0x02, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, - 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x72, 0x73, 0x12, 0x36, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, - 0x61, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6c, 0x6f, 0x62, - 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x36, 0x0a, - 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, - 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, - 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x4c, 0x0a, 0x04, 0x57, 0x72, 0x61, 0x70, 0x12, - 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, - 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xc1, 0x01, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, - 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x12, 0x38, 0x0a, 0x09, 0x77, 0x72, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x09, 0x77, 0x72, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, - 0x65, 0x79, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6b, - 0x65, 0x79, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x04, 0x77, 0x72, 0x61, 0x70, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x57, - 0x72, 0x61, 0x70, 0x52, 0x04, 0x77, 0x72, 0x61, 0x70, 0x22, 0x29, 0x0a, 0x0b, 0x4d, 0x65, 0x6d, - 0x6f, 0x72, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x01, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x01, 0x65, 0x22, 0x4f, 0x0a, 0x10, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, 0x04, - 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x6c, 0x6f, - 0x62, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, - 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0xb0, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x54, - 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, - 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x14, - 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, - 0x65, 0x6c, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x70, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x62, 0x70, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x70, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x66, 0x70, 0x73, 0x12, 0x1e, 0x0a, 0x0a, - 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0x96, 0x02, 0x0a, 0x15, 0x54, 0x72, 0x61, - 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x29, 0x0a, 0x04, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, - 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x04, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x22, 0x0a, - 0x0c, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, - 0x65, 0x12, 0x41, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, - 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x72, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x4d, 0x65, - 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, - 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0xb4, 0x01, 0x0a, 0x0e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, - 0x6c, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, - 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6d, 0x65, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x70, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x03, 0x62, 0x70, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x70, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x03, 0x66, 0x70, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, - 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, - 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x6f, 0x70, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x6f, 0x70, 0x22, 0x3f, 0x0a, 0x0f, 0x53, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, - 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x1f, 0x0a, 0x0d, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x16, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, - 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x50, 0x61, 0x74, 0x68, 0x22, 0x6a, 0x0a, 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, - 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x67, - 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, - 0x22, 0x7a, 0x0a, 0x12, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x53, 0x6e, - 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0xee, 0x01, 0x0a, - 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x53, - 0x68, 0x6f, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x53, 0x6e, 0x61, + 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x6a, 0x0a, 0x12, 0x44, + 0x65, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x26, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8a, 0x02, 0x0a, 0x0a, 0x44, 0x65, 0x76, 0x69, + 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x02, 0x49, 0x44, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3c, 0x0a, - 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x69, 0x6e, 0x67, - 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x0b, - 0x61, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x0b, 0x76, - 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x0b, 0x76, 0x69, - 0x64, 0x65, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x74, - 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x91, 0x01, - 0x0a, 0x13, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x70, - 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, - 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, - 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x62, 0x65, 0x72, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, - 0x74, 0x22, 0x6a, 0x0a, 0x12, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x76, - 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8a, 0x02, - 0x0a, 0x0a, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x49, 0x44, 0x12, 0x3a, 0x0a, 0x0a, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x44, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x44, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x75, 0x6c, 0x6c, 0x55, 0x52, 0x4c, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x70, 0x75, 0x6c, 0x6c, 0x55, 0x52, 0x4c, 0x32, 0xdb, 0x0f, 0x0a, 0x03, 0x61, - 0x70, 0x69, 0x12, 0x50, 0x0a, 0x07, 0x53, 0x79, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, - 0x79, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x12, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x79, 0x73, - 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x50, 0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, - 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x14, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x12, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, - 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x55, 0x0a, 0x08, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, - 0x77, 0x6e, 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, + 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x75, + 0x6c, 0x6c, 0x55, 0x52, 0x4c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x75, 0x6c, + 0x6c, 0x55, 0x52, 0x4c, 0x32, 0xdb, 0x0f, 0x0a, 0x03, 0x61, 0x70, 0x69, 0x12, 0x50, 0x0a, 0x07, + 0x53, 0x79, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, + 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x79, 0x73, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, + 0x12, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x79, 0x73, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x50, + 0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, + 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x0e, 0x12, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, + 0x12, 0x55, 0x0a, 0x08, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x15, 0x2e, 0x67, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, + 0x68, 0x49, 0x64, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x1a, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x14, 0x22, 0x12, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, + 0x77, 0x6e, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x53, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x22, 0x12, 0x2f, 0x61, 0x70, 0x69, 0x2f, - 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x53, 0x0a, - 0x07, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x1a, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x22, - 0x11, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x12, 0x54, 0x0a, 0x08, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x12, 0x16, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, - 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x16, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x12, 0x0e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, - 0x61, 0x73, 0x6b, 0x2f, 0x74, 0x72, 0x65, 0x65, 0x12, 0x5d, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, - 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x60, 0x0a, 0x08, 0x57, 0x61, 0x69, 0x74, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1e, 0x2e, 0x67, 0x6c, - 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x61, 0x69, 0x74, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x2f, 0x77, 0x61, 0x69, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x6d, 0x0a, 0x0a, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, - 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x2f, 0x69, 0x6e, 0x66, 0x6f, 0x2f, 0x7b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x73, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x53, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, - 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, - 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x61, 0x70, - 0x69, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x73, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x78, 0x0a, - 0x0e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x12, - 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, - 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6c, 0x6f, - 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x26, 0x12, 0x24, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x74, 0x72, 0x61, - 0x63, 0x6b, 0x2f, 0x73, 0x6e, 0x61, 0x70, 0x2f, 0x7b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, - 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x78, 0x0a, 0x0e, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x79, 0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x22, 0x11, 0x2f, 0x61, 0x70, 0x69, 0x2f, + 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x54, 0x0a, 0x08, + 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, 0x65, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x1a, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x72, + 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x16, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x10, 0x12, 0x0e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x61, 0x73, 0x6b, 0x2f, 0x74, 0x72, + 0x65, 0x65, 0x12, 0x5d, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, + 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, + 0x10, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2f, 0x6c, 0x69, 0x73, + 0x74, 0x12, 0x60, 0x0a, 0x08, 0x57, 0x61, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1e, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x61, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2f, 0x77, 0x61, 0x69, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x12, 0x6d, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, + 0x12, 0x20, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2f, 0x69, 0x6e, + 0x66, 0x6f, 0x2f, 0x7b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, + 0x2a, 0x7d, 0x12, 0x73, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1b, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, + 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x78, 0x0a, 0x0e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x12, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x61, 0x70, - 0x69, 0x2f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x2f, 0x73, 0x6e, 0x61, + 0x69, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x2f, 0x73, 0x6e, 0x61, 0x70, 0x2f, 0x7b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, - 0x7d, 0x12, 0x81, 0x01, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x1e, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x35, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x22, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2f, 0x7b, 0x69, - 0x64, 0x7d, 0x2f, 0x7b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, - 0x2a, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x64, 0x0a, 0x0d, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x1a, 0x17, 0x2e, - 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x22, 0x18, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x2f, 0x73, - 0x74, 0x6f, 0x70, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x60, 0x0a, 0x09, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2f, 0x67, 0x65, 0x74, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x12, 0x65, 0x0a, - 0x0a, 0x47, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x18, 0x2e, 0x67, 0x6c, - 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x6c, 0x79, 0x2f, 0x7b, 0x6e, - 0x61, 0x6d, 0x65, 0x7d, 0x12, 0x6d, 0x0a, 0x0c, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x4d, 0x6f, - 0x64, 0x69, 0x66, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x21, 0x22, 0x19, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, - 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x3a, 0x04, 0x79, - 0x61, 0x6d, 0x6c, 0x12, 0x5d, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, - 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, - 0x12, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x6c, 0x69, - 0x73, 0x74, 0x12, 0x54, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, - 0x12, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, - 0x6e, 0x66, 0x6f, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x14, 0x22, 0x0f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, - 0x65, 0x2f, 0x61, 0x64, 0x64, 0x3a, 0x01, 0x2a, 0x12, 0x62, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x1a, + 0x7d, 0x12, 0x78, 0x0a, 0x0e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, + 0x6e, 0x61, 0x70, 0x12, 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x53, 0x6e, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, + 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x53, 0x6e, 0x61, + 0x70, 0x53, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x69, 0x64, 0x65, + 0x6f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x2f, 0x73, 0x6e, 0x61, 0x70, 0x2f, 0x7b, 0x73, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x81, 0x01, 0x0a, 0x0f, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, + 0x1e, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, - 0x22, 0x17, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x72, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x5a, 0x0a, 0x0c, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x2e, 0x67, - 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, - 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x17, 0x22, 0x12, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x42, 0x14, 0x5a, 0x12, 0x6d, 0x37, 0x73, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x2f, 0x6d, 0x37, 0x73, 0x2f, 0x76, 0x35, 0x2f, 0x70, 0x62, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x35, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, + 0x22, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, + 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x7b, 0x73, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x3a, 0x01, 0x2a, 0x12, + 0x64, 0x0a, 0x0d, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, + 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, + 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x22, 0x18, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x70, 0x2f, 0x7b, 0x69, + 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x60, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, + 0x16, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x67, 0x65, 0x74, + 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x12, 0x65, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x46, 0x6f, + 0x72, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x18, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x19, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, + 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x6c, 0x79, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x12, 0x6d, + 0x0a, 0x0c, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, + 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x6c, + 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x22, 0x19, 0x2f, 0x61, + 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, + 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x3a, 0x04, 0x79, 0x61, 0x6d, 0x6c, 0x12, 0x5d, 0x0a, + 0x0d, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, + 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x61, 0x70, 0x69, + 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x09, + 0x41, 0x64, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x2e, 0x67, 0x6c, 0x6f, 0x62, + 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x17, 0x2e, + 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x22, 0x0f, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x61, 0x64, 0x64, 0x3a, + 0x01, 0x2a, 0x12, 0x62, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, + 0x63, 0x65, 0x12, 0x15, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, 0x62, + 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x61, 0x70, 0x69, + 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x2f, 0x7b, + 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x5a, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, + 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x17, 0x2e, 0x67, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x22, 0x12, 0x2f, 0x61, 0x70, + 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, + 0x01, 0x2a, 0x42, 0x14, 0x5a, 0x12, 0x6d, 0x37, 0x73, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x2f, 0x6d, + 0x37, 0x73, 0x2f, 0x76, 0x35, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2840,72 +2841,73 @@ var file_global_proto_depIdxs = []int32{ 38, // 8: global.TaskTreeResponse.startTime:type_name -> google.protobuf.Timestamp 35, // 9: global.TaskTreeResponse.description:type_name -> global.TaskTreeResponse.DescriptionEntry 10, // 10: global.TaskTreeResponse.children:type_name -> global.TaskTreeResponse - 15, // 11: global.StreamListResponse.list:type_name -> global.StreamInfoResponse - 36, // 12: global.StreamWaitListResponse.list:type_name -> global.StreamWaitListResponse.ListEntry - 20, // 13: global.StreamInfoResponse.audioTrack:type_name -> global.AudioTrackInfo - 22, // 14: global.StreamInfoResponse.videoTrack:type_name -> global.VideoTrackInfo - 38, // 15: global.StreamInfoResponse.startTime:type_name -> google.protobuf.Timestamp - 38, // 16: global.TrackSnapShot.writeTime:type_name -> google.protobuf.Timestamp - 16, // 17: global.TrackSnapShot.wrap:type_name -> global.Wrap - 18, // 18: global.MemoryBlockGroup.list:type_name -> global.MemoryBlock - 17, // 19: global.TrackSnapShotResponse.ring:type_name -> global.TrackSnapShot - 37, // 20: global.TrackSnapShotResponse.reader:type_name -> global.TrackSnapShotResponse.ReaderEntry - 19, // 21: global.TrackSnapShotResponse.memory:type_name -> global.MemoryBlockGroup - 38, // 22: global.SubscriberSnapShot.startTime:type_name -> google.protobuf.Timestamp - 27, // 23: global.SubscriberSnapShot.audioReader:type_name -> global.RingReaderSnapShot - 27, // 24: global.SubscriberSnapShot.videoReader:type_name -> global.RingReaderSnapShot - 28, // 25: global.SubscribersResponse.list:type_name -> global.SubscriberSnapShot - 31, // 26: global.DeviceListResponse.data:type_name -> global.DeviceInfo - 38, // 27: global.DeviceInfo.createTime:type_name -> google.protobuf.Timestamp - 38, // 28: global.DeviceInfo.updateTime:type_name -> google.protobuf.Timestamp - 1, // 29: global.Formily.PropertiesEntry.value:type_name -> global.Formily - 39, // 30: global.Formily.ComponentPropsEntry.value:type_name -> google.protobuf.Any - 1, // 31: global.FormilyResponse.PropertiesEntry.value:type_name -> global.Formily - 40, // 32: global.api.SysInfo:input_type -> google.protobuf.Empty - 40, // 33: global.api.Summary:input_type -> google.protobuf.Empty - 24, // 34: global.api.Shutdown:input_type -> global.RequestWithId - 24, // 35: global.api.Restart:input_type -> global.RequestWithId - 40, // 36: global.api.TaskTree:input_type -> google.protobuf.Empty - 11, // 37: global.api.StreamList:input_type -> global.StreamListRequest - 40, // 38: global.api.WaitList:input_type -> google.protobuf.Empty - 14, // 39: global.api.StreamInfo:input_type -> global.StreamSnapRequest - 26, // 40: global.api.GetSubscribers:input_type -> global.SubscribersRequest - 14, // 41: global.api.AudioTrackSnap:input_type -> global.StreamSnapRequest - 14, // 42: global.api.VideoTrackSnap:input_type -> global.StreamSnapRequest - 25, // 43: global.api.ChangeSubscribe:input_type -> global.ChangeSubscribeRequest - 24, // 44: global.api.StopSubscribe:input_type -> global.RequestWithId - 0, // 45: global.api.GetConfig:input_type -> global.GetConfigRequest - 0, // 46: global.api.GetFormily:input_type -> global.GetConfigRequest - 4, // 47: global.api.ModifyConfig:input_type -> global.ModifyConfigRequest - 40, // 48: global.api.GetDeviceList:input_type -> google.protobuf.Empty - 31, // 49: global.api.AddDevice:input_type -> global.DeviceInfo - 24, // 50: global.api.RemoveDevice:input_type -> global.RequestWithId - 31, // 51: global.api.UpdateDevice:input_type -> global.DeviceInfo - 9, // 52: global.api.SysInfo:output_type -> global.SysInfoResponse - 7, // 53: global.api.Summary:output_type -> global.SummaryResponse - 40, // 54: global.api.Shutdown:output_type -> google.protobuf.Empty - 40, // 55: global.api.Restart:output_type -> google.protobuf.Empty - 10, // 56: global.api.TaskTree:output_type -> global.TaskTreeResponse - 12, // 57: global.api.StreamList:output_type -> global.StreamListResponse - 13, // 58: global.api.WaitList:output_type -> global.StreamWaitListResponse - 15, // 59: global.api.StreamInfo:output_type -> global.StreamInfoResponse - 29, // 60: global.api.GetSubscribers:output_type -> global.SubscribersResponse - 21, // 61: global.api.AudioTrackSnap:output_type -> global.TrackSnapShotResponse - 21, // 62: global.api.VideoTrackSnap:output_type -> global.TrackSnapShotResponse - 23, // 63: global.api.ChangeSubscribe:output_type -> global.SuccessResponse - 23, // 64: global.api.StopSubscribe:output_type -> global.SuccessResponse - 3, // 65: global.api.GetConfig:output_type -> global.GetConfigResponse - 3, // 66: global.api.GetFormily:output_type -> global.GetConfigResponse - 23, // 67: global.api.ModifyConfig:output_type -> global.SuccessResponse - 30, // 68: global.api.GetDeviceList:output_type -> global.DeviceListResponse - 23, // 69: global.api.AddDevice:output_type -> global.SuccessResponse - 23, // 70: global.api.RemoveDevice:output_type -> global.SuccessResponse - 23, // 71: global.api.UpdateDevice:output_type -> global.SuccessResponse - 52, // [52:72] is the sub-list for method output_type - 32, // [32:52] is the sub-list for method input_type - 32, // [32:32] is the sub-list for extension type_name - 32, // [32:32] is the sub-list for extension extendee - 0, // [0:32] is the sub-list for field type_name + 10, // 11: global.TaskTreeResponse.blocked:type_name -> global.TaskTreeResponse + 15, // 12: global.StreamListResponse.list:type_name -> global.StreamInfoResponse + 36, // 13: global.StreamWaitListResponse.list:type_name -> global.StreamWaitListResponse.ListEntry + 20, // 14: global.StreamInfoResponse.audioTrack:type_name -> global.AudioTrackInfo + 22, // 15: global.StreamInfoResponse.videoTrack:type_name -> global.VideoTrackInfo + 38, // 16: global.StreamInfoResponse.startTime:type_name -> google.protobuf.Timestamp + 38, // 17: global.TrackSnapShot.writeTime:type_name -> google.protobuf.Timestamp + 16, // 18: global.TrackSnapShot.wrap:type_name -> global.Wrap + 18, // 19: global.MemoryBlockGroup.list:type_name -> global.MemoryBlock + 17, // 20: global.TrackSnapShotResponse.ring:type_name -> global.TrackSnapShot + 37, // 21: global.TrackSnapShotResponse.reader:type_name -> global.TrackSnapShotResponse.ReaderEntry + 19, // 22: global.TrackSnapShotResponse.memory:type_name -> global.MemoryBlockGroup + 38, // 23: global.SubscriberSnapShot.startTime:type_name -> google.protobuf.Timestamp + 27, // 24: global.SubscriberSnapShot.audioReader:type_name -> global.RingReaderSnapShot + 27, // 25: global.SubscriberSnapShot.videoReader:type_name -> global.RingReaderSnapShot + 28, // 26: global.SubscribersResponse.list:type_name -> global.SubscriberSnapShot + 31, // 27: global.DeviceListResponse.data:type_name -> global.DeviceInfo + 38, // 28: global.DeviceInfo.createTime:type_name -> google.protobuf.Timestamp + 38, // 29: global.DeviceInfo.updateTime:type_name -> google.protobuf.Timestamp + 1, // 30: global.Formily.PropertiesEntry.value:type_name -> global.Formily + 39, // 31: global.Formily.ComponentPropsEntry.value:type_name -> google.protobuf.Any + 1, // 32: global.FormilyResponse.PropertiesEntry.value:type_name -> global.Formily + 40, // 33: global.api.SysInfo:input_type -> google.protobuf.Empty + 40, // 34: global.api.Summary:input_type -> google.protobuf.Empty + 24, // 35: global.api.Shutdown:input_type -> global.RequestWithId + 24, // 36: global.api.Restart:input_type -> global.RequestWithId + 40, // 37: global.api.TaskTree:input_type -> google.protobuf.Empty + 11, // 38: global.api.StreamList:input_type -> global.StreamListRequest + 40, // 39: global.api.WaitList:input_type -> google.protobuf.Empty + 14, // 40: global.api.StreamInfo:input_type -> global.StreamSnapRequest + 26, // 41: global.api.GetSubscribers:input_type -> global.SubscribersRequest + 14, // 42: global.api.AudioTrackSnap:input_type -> global.StreamSnapRequest + 14, // 43: global.api.VideoTrackSnap:input_type -> global.StreamSnapRequest + 25, // 44: global.api.ChangeSubscribe:input_type -> global.ChangeSubscribeRequest + 24, // 45: global.api.StopSubscribe:input_type -> global.RequestWithId + 0, // 46: global.api.GetConfig:input_type -> global.GetConfigRequest + 0, // 47: global.api.GetFormily:input_type -> global.GetConfigRequest + 4, // 48: global.api.ModifyConfig:input_type -> global.ModifyConfigRequest + 40, // 49: global.api.GetDeviceList:input_type -> google.protobuf.Empty + 31, // 50: global.api.AddDevice:input_type -> global.DeviceInfo + 24, // 51: global.api.RemoveDevice:input_type -> global.RequestWithId + 31, // 52: global.api.UpdateDevice:input_type -> global.DeviceInfo + 9, // 53: global.api.SysInfo:output_type -> global.SysInfoResponse + 7, // 54: global.api.Summary:output_type -> global.SummaryResponse + 40, // 55: global.api.Shutdown:output_type -> google.protobuf.Empty + 40, // 56: global.api.Restart:output_type -> google.protobuf.Empty + 10, // 57: global.api.TaskTree:output_type -> global.TaskTreeResponse + 12, // 58: global.api.StreamList:output_type -> global.StreamListResponse + 13, // 59: global.api.WaitList:output_type -> global.StreamWaitListResponse + 15, // 60: global.api.StreamInfo:output_type -> global.StreamInfoResponse + 29, // 61: global.api.GetSubscribers:output_type -> global.SubscribersResponse + 21, // 62: global.api.AudioTrackSnap:output_type -> global.TrackSnapShotResponse + 21, // 63: global.api.VideoTrackSnap:output_type -> global.TrackSnapShotResponse + 23, // 64: global.api.ChangeSubscribe:output_type -> global.SuccessResponse + 23, // 65: global.api.StopSubscribe:output_type -> global.SuccessResponse + 3, // 66: global.api.GetConfig:output_type -> global.GetConfigResponse + 3, // 67: global.api.GetFormily:output_type -> global.GetConfigResponse + 23, // 68: global.api.ModifyConfig:output_type -> global.SuccessResponse + 30, // 69: global.api.GetDeviceList:output_type -> global.DeviceListResponse + 23, // 70: global.api.AddDevice:output_type -> global.SuccessResponse + 23, // 71: global.api.RemoveDevice:output_type -> global.SuccessResponse + 23, // 72: global.api.UpdateDevice:output_type -> global.SuccessResponse + 53, // [53:73] is the sub-list for method output_type + 33, // [33:53] is the sub-list for method input_type + 33, // [33:33] is the sub-list for extension type_name + 33, // [33:33] is the sub-list for extension extendee + 0, // [0:33] is the sub-list for field type_name } func init() { file_global_proto_init() } diff --git a/pb/global.proto b/pb/global.proto index 5ebe460..992c7cb 100644 --- a/pb/global.proto +++ b/pb/global.proto @@ -197,7 +197,7 @@ message TaskTreeResponse { map description = 5; repeated TaskTreeResponse children = 6; uint32 state = 7; - bool blocked = 8; + TaskTreeResponse blocked = 8; } message StreamListRequest { diff --git a/pkg/ring-writer.go b/pkg/ring-writer.go index ee4eff8..a4d312e 100644 --- a/pkg/ring-writer.go +++ b/pkg/ring-writer.go @@ -1,7 +1,6 @@ package pkg import ( - "fmt" "log/slog" "sync" "time" @@ -38,14 +37,14 @@ func NewRingWriter(sizeRange util.Range[int]) (rb *RingWriter) { func (rb *RingWriter) Resize(size int) { if size > 0 { - rb.glow(size) + rb.glow(size, "test") } else { rb.reduce(-size) } } -func (rb *RingWriter) glow(size int) (newItem *util.Ring[AVFrame]) { - before, poolBefore := rb.Size, rb.poolSize +func (rb *RingWriter) glow(size int, reason string) (newItem *util.Ring[AVFrame]) { + //before, poolBefore := rb.Size, rb.poolSize if newCount := size - rb.poolSize; newCount > 0 { newItem = util.NewRing[AVFrame](newCount).Link(rb.pool) rb.poolSize = 0 @@ -58,12 +57,12 @@ func (rb *RingWriter) glow(size int) (newItem *util.Ring[AVFrame]) { } rb.Link(newItem) rb.Size += size - rb.SLogger.Debug("glow", "size", fmt.Sprintf("%d -> %d", before, rb.Size), "pool", fmt.Sprintf("%d -> %d", poolBefore, rb.poolSize)) + //rb.SLogger.Debug("glow", "reason", reason, "size", fmt.Sprintf("%d -> %d", before, rb.Size), "pool", fmt.Sprintf("%d -> %d", poolBefore, rb.poolSize)) return } func (rb *RingWriter) reduce(size int) { - before, poolBefore := rb.Size, rb.poolSize + _, poolBefore := rb.Size, rb.poolSize r := rb.Unlink(size) rb.Size -= size for range size { @@ -86,7 +85,7 @@ func (rb *RingWriter) reduce(size int) { rb.pool.Link(r) } } - rb.SLogger.Debug("reduce", "size", fmt.Sprintf("%d -> %d", before, rb.Size), "pool", fmt.Sprintf("%d -> %d", poolBefore, rb.poolSize)) + //rb.SLogger.Debug("reduce", "size", fmt.Sprintf("%d -> %d", before, rb.Size), "pool", fmt.Sprintf("%d -> %d", poolBefore, rb.poolSize)) } func (rb *RingWriter) Dispose() { @@ -150,8 +149,7 @@ func (rb *RingWriter) Step() (normal bool) { // do not remove only idr if next == rb.IDRingList.Back().Value { if rb.Size < rb.SizeRange[1] { - rb.SLogger.Debug("only idr") - rb.glow(5) + rb.glow(5, "only idr") next = rb.Next() } } else if next == oldIDR.Value { @@ -161,8 +159,7 @@ func (rb *RingWriter) Step() (normal bool) { rb.IDRingList.Remove(oldIDR) rb.Unlock() } else { - rb.SLogger.Debug("not enough buffer") - rb.glow(5) + rb.glow(5, "not enough buffer") next = rb.Next() } } else if rb.BufferRange[1] > rb.BufferRange[0] { @@ -192,8 +189,8 @@ func (rb *RingWriter) Step() (normal bool) { next.Value.Reset() rb.Ring = next } else { - rb.reduce(1) //抛弃还有订阅者的节点 - rb.Ring = rb.glow(1) //补充一个新节点 + rb.reduce(1) //抛弃还有订阅者的节点 + rb.Ring = rb.glow(1, "refill") //补充一个新节点 normal = rb.Value.StartWrite() if !normal { panic("RingWriter.Step") diff --git a/pkg/task/job.go b/pkg/task/job.go index 6cf37cc..9b2c623 100644 --- a/pkg/task/job.go +++ b/pkg/task/job.go @@ -27,7 +27,7 @@ type Job struct { lazyRun sync.Once childrenDisposed chan struct{} childDisposeListeners []func(ITask) - blocked bool + blocked ITask } func (*Job) GetTaskType() TaskType { @@ -38,7 +38,7 @@ func (mt *Job) getJob() *Job { return mt } -func (mt *Job) Blocked() bool { +func (mt *Job) Blocked() ITask { return mt.blocked } @@ -146,7 +146,7 @@ func (mt *Job) Post(callback func() error, args ...any) *Task { task := CreateTaskByCallBack(callback, nil) description := make(Description) if len(args) > 0 { - description["ownerType"] = args[0] + description[OwnerTypeKey] = args[0] } else { description = nil } @@ -174,15 +174,14 @@ func (mt *Job) run() { close(mt.childrenDisposed) }() for { - mt.blocked = false + mt.blocked = nil if chosen, rev, ok := reflect.Select(cases); chosen == 0 { - mt.blocked = true if !ok { return } - if child := rev.Interface().(ITask); child.getParent() != mt || child.start() { - mt.children = append(mt.children, child) - cases = append(cases, reflect.SelectCase{Dir: reflect.SelectRecv, Chan: reflect.ValueOf(child.GetSignal())}) + if mt.blocked = rev.Interface().(ITask); mt.blocked.getParent() != mt || mt.blocked.start() { + mt.children = append(mt.children, mt.blocked) + cases = append(cases, reflect.SelectCase{Dir: reflect.SelectRecv, Chan: reflect.ValueOf(mt.blocked.GetSignal())}) } } else { taskIndex := chosen - 1 diff --git a/pkg/task/task.go b/pkg/task/task.go index e28634e..2dedc93 100644 --- a/pkg/task/task.go +++ b/pkg/task/task.go @@ -14,6 +14,7 @@ import ( ) const TraceLevel = slog.Level(-8) +const OwnerTypeKey = "ownerType" var ( ErrAutoStop = errors.New("auto stop") @@ -74,7 +75,7 @@ type ( AddTask(ITask, ...any) *Task RangeSubTask(func(yield ITask) bool) OnChildDispose(func(ITask)) - Blocked() bool + Blocked() ITask Call(func() error, ...any) Post(func() error, ...any) *Task } @@ -144,7 +145,7 @@ func (task *Task) GetTaskID() uint32 { } func (task *Task) GetOwnerType() string { if task.Description != nil { - if ownerType, ok := task.Description["ownerType"]; ok { + if ownerType, ok := task.Description[OwnerTypeKey]; ok { return ownerType.(string) } } diff --git a/pkg/util/collection.go b/pkg/util/collection.go index 4354081..9833020 100644 --- a/pkg/util/collection.go +++ b/pkg/util/collection.go @@ -101,23 +101,23 @@ func (c *Collection[K, T]) RemoveByKey(key K) bool { return false } -// func (c *Collection[K, T]) GetOrCreate(key K) (item T, find bool) { -// if c.L != nil { -// c.L.Lock() -// defer c.L.Unlock() -// } -// if c.m != nil { -// item, find = c.m[key] -// return item, find -// } -// for _, item = range c.Items { -// if item.GetKey() == key { -// return item, true -// } -// } -// item = reflect.New(reflect.TypeOf(item).Elem()).Interface().(T) -// return -// } +// func (c *Collection[K, T]) GetOrCreate(key K) (item T, find bool) { +// if c.L != nil { +// c.L.Lock() +// defer c.L.Unlock() +// } +// if c.m != nil { +// item, find = c.m[key] +// return item, find +// } +// for _, item = range c.Items { +// if item.GetKey() == key { +// return item, true +// } +// } +// item = reflect.New(reflect.TypeOf(item).Elem()).Interface().(T) +// return +// } func (c *Collection[K, T]) Has(key K) bool { _, ok := c.Get(key) return ok @@ -153,6 +153,22 @@ func (c *Collection[K, T]) Find(f func(T) bool) (item T, ok bool) { return } +func (c *Collection[K, T]) Search(f func(T) bool) func(yield func(item T) bool) { + if c.L != nil { + c.L.RLock() + defer c.L.RUnlock() + } + return func(yield func(item T) bool) { + for _, item := range c.Items { + if f(item) { + if !yield(item) { + break + } + } + } + } +} + func (c *Collection[K, T]) GetKey() K { return c.Items[0].GetKey() } diff --git a/pkg/util/dtsestimator.go b/pkg/util/dtsestimator.go index 8606208..e289521 100644 --- a/pkg/util/dtsestimator.go +++ b/pkg/util/dtsestimator.go @@ -9,12 +9,6 @@ type DTSEstimator struct { interval uint32 } -// NewDTSEstimator allocates a DTSEstimator. -func NewDTSEstimator() *DTSEstimator { - result := &DTSEstimator{} - return result -} - func (d *DTSEstimator) Clone() *DTSEstimator { return &DTSEstimator{ d.hasB, @@ -48,7 +42,7 @@ func (d *DTSEstimator) add(pts uint32) { func (d *DTSEstimator) Feed(pts uint32) uint32 { interval := Conditional(pts > d.prevPTS, pts-d.prevPTS, d.prevPTS-pts) if interval > 10*d.interval { - *d = *NewDTSEstimator() + *d = DTSEstimator{} } d.interval = interval d.add(pts) diff --git a/plugin/console/web/assets/404-5d728301.js b/plugin/console/web/assets/404-59ae976f.js similarity index 93% rename from plugin/console/web/assets/404-5d728301.js rename to plugin/console/web/assets/404-59ae976f.js index 901cb40..0a256cd 100644 --- a/plugin/console/web/assets/404-5d728301.js +++ b/plugin/console/web/assets/404-59ae976f.js @@ -1 +1 @@ -import{m as s}from"./vendor-ec30964e.js";import{_ as n}from"./index-93e74700.js";const _=""+new URL("404-54dd6499.svg",import.meta.url).href;const t=e=>(Vue.pushScopeId("data-v-bed2e9f0"),e=e(),Vue.popScopeId(),e),r={class:"flex flex-col justify-center page-container"},a=t(()=>Vue.createElementVNode("div",{class:"text-center"},[Vue.createElementVNode("img",{src:_,alt:""})],-1)),d={class:"text-center"},p=t(()=>Vue.createElementVNode("h1",{class:"text-base text-gray-500"},"抱歉,你访问的页面不存在",-1)),i=Vue.createTextVNode("回到首页"),l=Vue.defineComponent({setup(e){const o=s();function u(){o.push("/")}return(m,V)=>{const c=Vue.resolveComponent("n-button");return Vue.openBlock(),Vue.createElementBlock("div",r,[a,Vue.createElementVNode("div",d,[p,Vue.createVNode(c,{type:"info",onClick:u},{default:Vue.withCtx(()=>[i]),_:1})])])}}}),x=n(l,[["__scopeId","data-v-bed2e9f0"]]);export{x as default}; +import{m as s}from"./vendor-ec30964e.js";import{_ as n}from"./index-c14b60e2.js";const _=""+new URL("404-54dd6499.svg",import.meta.url).href;const t=e=>(Vue.pushScopeId("data-v-bed2e9f0"),e=e(),Vue.popScopeId(),e),r={class:"flex flex-col justify-center page-container"},a=t(()=>Vue.createElementVNode("div",{class:"text-center"},[Vue.createElementVNode("img",{src:_,alt:""})],-1)),d={class:"text-center"},p=t(()=>Vue.createElementVNode("h1",{class:"text-base text-gray-500"},"抱歉,你访问的页面不存在",-1)),i=Vue.createTextVNode("回到首页"),l=Vue.defineComponent({setup(e){const o=s();function u(){o.push("/")}return(m,V)=>{const c=Vue.resolveComponent("n-button");return Vue.openBlock(),Vue.createElementBlock("div",r,[a,Vue.createElementVNode("div",d,[p,Vue.createVNode(c,{type:"info",onClick:u},{default:Vue.withCtx(()=>[i]),_:1})])])}}}),x=n(l,[["__scopeId","data-v-bed2e9f0"]]);export{x as default}; diff --git a/plugin/console/web/assets/TableAction-b6863a0a.js b/plugin/console/web/assets/TableAction-45c049b5.js similarity index 99% rename from plugin/console/web/assets/TableAction-b6863a0a.js rename to plugin/console/web/assets/TableAction-45c049b5.js index 2093a10..146ff8c 100644 --- a/plugin/console/web/assets/TableAction-b6863a0a.js +++ b/plugin/console/web/assets/TableAction-45c049b5.js @@ -1,4 +1,4 @@ -import{e as Yn,_ as pt,C as Ln,p as It,f as Qe,h as ee,j as Mt,k as Ee,m as We,n as Bn}from"./index-93e74700.js";import{S as zn,Z as Hn,_ as Xn,$ as qn,a0 as Ye,a1 as sn,a2 as jn,C as Gn,a3 as Qn,a4 as Kn,a5 as Jn,a6 as Zn,a7 as er,a8 as tr,a9 as nr,aa as rr,ab as or}from"./vendor-ec30964e.js";const cn=Symbol("s-table");function ar(t){Vue.provide(cn,t)}function dn(){return Vue.inject(cn)}/**! +import{e as Yn,_ as pt,C as Ln,p as It,f as Qe,h as ee,j as Mt,k as Ee,m as We,n as Bn}from"./index-c14b60e2.js";import{S as zn,Z as Hn,_ as Xn,$ as qn,a0 as Ye,a1 as sn,a2 as jn,C as Gn,a3 as Qn,a4 as Kn,a5 as Jn,a6 as Zn,a7 as er,a8 as tr,a9 as nr,aa as rr,ab as or}from"./vendor-ec30964e.js";const cn=Symbol("s-table");function ar(t){Vue.provide(cn,t)}function dn(){return Vue.inject(cn)}/**! * Sortable 1.14.0 * @author RubaXa * @author owenm diff --git a/plugin/console/web/assets/account-1c311472.js b/plugin/console/web/assets/account-15401ba6.js similarity index 98% rename from plugin/console/web/assets/account-1c311472.js rename to plugin/console/web/assets/account-15401ba6.js index e7d3895..95338e6 100644 --- a/plugin/console/web/assets/account-1c311472.js +++ b/plugin/console/web/assets/account-15401ba6.js @@ -1 +1 @@ -import{q as k,t as F,_ as w,u as y}from"./index-93e74700.js";import{m as v,l as B}from"./vendor-ec30964e.js";const N=Vue.createTextVNode("绑定"),A=Vue.defineComponent({setup(g){const f=v(),o=B(),l={mail:{required:!0,message:"请输入邮箱",trigger:"blur"},password:{required:!0,message:"请输入密码",trigger:"blur"}},c=Vue.ref(null),i=naive.useMessage(),t=Vue.reactive({mail:"",password:""});function C(){c.value.validate(V=>{V?i.error("绑定失败,请联系管理员"):k().then(u=>{const n=u.data.openid,{mail:e,password:m}=t;F({mail:e,password:m,openid:n}).then(()=>{var r;i.info("绑定成功");const a=decodeURIComponent(((r=o.query)==null?void 0:r.redirect)||"/");f.replace(a)})})})}return(V,u)=>{const n=Vue.resolveComponent("n-input"),e=Vue.resolveComponent("n-form-item"),m=Vue.resolveComponent("n-button"),p=Vue.resolveComponent("n-space"),a=Vue.resolveComponent("n-form"),r=Vue.resolveComponent("n-grid-item"),_=Vue.resolveComponent("n-grid");return Vue.openBlock(),Vue.createBlock(_,{cols:"2 s:2 m:2 l:3 xl:3 2xl:3",responsive:"screen"},{default:Vue.withCtx(()=>[Vue.createVNode(r,null,{default:Vue.withCtx(()=>[Vue.createVNode(a,{"label-width":80,model:Vue.unref(t),rules:l,ref_key:"formRef",ref:c},{default:Vue.withCtx(()=>[Vue.createVNode(e,{label:"邮箱",path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(n,{value:Vue.unref(t).mail,"onUpdate:value":u[0]||(u[0]=s=>Vue.unref(t).mail=s),placeholder:"请输入邮箱"},null,8,["value"])]),_:1}),Vue.createVNode(e,{label:"密码",path:"password"},{default:Vue.withCtx(()=>[Vue.createVNode(n,{placeholder:"请输入密码",value:Vue.unref(t).password,"onUpdate:value":u[1]||(u[1]=s=>Vue.unref(t).password=s)},null,8,["value"])]),_:1}),Vue.createElementVNode("div",null,[Vue.createVNode(p,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{type:"primary",onClick:C},{default:Vue.withCtx(()=>[N]),_:1})]),_:1})])]),_:1},8,["model"])]),_:1})]),_:1})}}});const E=Vue.defineComponent({setup(g){const f=[{name:"绑定旧账号",key:1},{name:"退出登录",key:3}],o=Vue.ref(1),l=Vue.ref("绑定旧账号"),c=naive.useMessage(),i=y(),t=naive.useDialog(),C=v(),V=B();function u(){t.info({title:"提示",content:"您确定要退出登录吗",positiveText:"确定",negativeText:"取消",onPositiveClick:()=>{i.logout().then(()=>{c.success("成功退出登录"),localStorage.removeItem("TABS-ROUTES"),C.replace({name:"Login",query:{redirect:V.fullPath}})})},onNegativeClick:()=>{}})}function n(e){e.key==3?u():(o.value=e.key,l.value=e.name)}return(e,m)=>{const p=Vue.resolveComponent("n-thing"),a=Vue.resolveComponent("n-list-item"),r=Vue.resolveComponent("n-list"),_=Vue.resolveComponent("n-grid-item"),s=Vue.resolveComponent("PM2"),h=Vue.resolveComponent("n-card"),x=Vue.resolveComponent("n-grid");return Vue.openBlock(),Vue.createBlock(x,{"x-gap":24},{default:Vue.withCtx(()=>[Vue.createVNode(_,{span:"6"},{default:Vue.withCtx(()=>[Vue.createVNode(r,null,{default:Vue.withCtx(()=>[Vue.createVNode(a,null,{default:Vue.withCtx(()=>[(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(f,d=>Vue.createVNode(p,{class:Vue.normalizeClass(["thing-cell",{"thing-cell-on":o.value===d.key}]),key:d.key,onClick:D=>n(d)},{header:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(d.name),1)]),_:2},1032,["class","onClick"])),64))]),_:1})]),_:1})]),_:1}),Vue.createVNode(_,{span:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(h,{bordered:!1,size:"small",title:l.value,class:"proCard"},{default:Vue.withCtx(()=>[o.value===1?(Vue.openBlock(),Vue.createBlock(A,{key:0})):Vue.createCommentVNode("",!0),o.value===2?(Vue.openBlock(),Vue.createBlock(s,{key:1})):Vue.createCommentVNode("",!0)]),_:1},8,["title"])]),_:1})]),_:1})}}}),S=w(E,[["__scopeId","data-v-21fc9a7e"]]);export{S as default}; +import{q as k,t as F,_ as w,u as y}from"./index-c14b60e2.js";import{m as v,l as B}from"./vendor-ec30964e.js";const N=Vue.createTextVNode("绑定"),A=Vue.defineComponent({setup(g){const f=v(),o=B(),l={mail:{required:!0,message:"请输入邮箱",trigger:"blur"},password:{required:!0,message:"请输入密码",trigger:"blur"}},c=Vue.ref(null),i=naive.useMessage(),t=Vue.reactive({mail:"",password:""});function C(){c.value.validate(V=>{V?i.error("绑定失败,请联系管理员"):k().then(u=>{const n=u.data.openid,{mail:e,password:m}=t;F({mail:e,password:m,openid:n}).then(()=>{var r;i.info("绑定成功");const a=decodeURIComponent(((r=o.query)==null?void 0:r.redirect)||"/");f.replace(a)})})})}return(V,u)=>{const n=Vue.resolveComponent("n-input"),e=Vue.resolveComponent("n-form-item"),m=Vue.resolveComponent("n-button"),p=Vue.resolveComponent("n-space"),a=Vue.resolveComponent("n-form"),r=Vue.resolveComponent("n-grid-item"),_=Vue.resolveComponent("n-grid");return Vue.openBlock(),Vue.createBlock(_,{cols:"2 s:2 m:2 l:3 xl:3 2xl:3",responsive:"screen"},{default:Vue.withCtx(()=>[Vue.createVNode(r,null,{default:Vue.withCtx(()=>[Vue.createVNode(a,{"label-width":80,model:Vue.unref(t),rules:l,ref_key:"formRef",ref:c},{default:Vue.withCtx(()=>[Vue.createVNode(e,{label:"邮箱",path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(n,{value:Vue.unref(t).mail,"onUpdate:value":u[0]||(u[0]=s=>Vue.unref(t).mail=s),placeholder:"请输入邮箱"},null,8,["value"])]),_:1}),Vue.createVNode(e,{label:"密码",path:"password"},{default:Vue.withCtx(()=>[Vue.createVNode(n,{placeholder:"请输入密码",value:Vue.unref(t).password,"onUpdate:value":u[1]||(u[1]=s=>Vue.unref(t).password=s)},null,8,["value"])]),_:1}),Vue.createElementVNode("div",null,[Vue.createVNode(p,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{type:"primary",onClick:C},{default:Vue.withCtx(()=>[N]),_:1})]),_:1})])]),_:1},8,["model"])]),_:1})]),_:1})}}});const E=Vue.defineComponent({setup(g){const f=[{name:"绑定旧账号",key:1},{name:"退出登录",key:3}],o=Vue.ref(1),l=Vue.ref("绑定旧账号"),c=naive.useMessage(),i=y(),t=naive.useDialog(),C=v(),V=B();function u(){t.info({title:"提示",content:"您确定要退出登录吗",positiveText:"确定",negativeText:"取消",onPositiveClick:()=>{i.logout().then(()=>{c.success("成功退出登录"),localStorage.removeItem("TABS-ROUTES"),C.replace({name:"Login",query:{redirect:V.fullPath}})})},onNegativeClick:()=>{}})}function n(e){e.key==3?u():(o.value=e.key,l.value=e.name)}return(e,m)=>{const p=Vue.resolveComponent("n-thing"),a=Vue.resolveComponent("n-list-item"),r=Vue.resolveComponent("n-list"),_=Vue.resolveComponent("n-grid-item"),s=Vue.resolveComponent("PM2"),h=Vue.resolveComponent("n-card"),x=Vue.resolveComponent("n-grid");return Vue.openBlock(),Vue.createBlock(x,{"x-gap":24},{default:Vue.withCtx(()=>[Vue.createVNode(_,{span:"6"},{default:Vue.withCtx(()=>[Vue.createVNode(r,null,{default:Vue.withCtx(()=>[Vue.createVNode(a,null,{default:Vue.withCtx(()=>[(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(f,d=>Vue.createVNode(p,{class:Vue.normalizeClass(["thing-cell",{"thing-cell-on":o.value===d.key}]),key:d.key,onClick:D=>n(d)},{header:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(d.name),1)]),_:2},1032,["class","onClick"])),64))]),_:1})]),_:1})]),_:1}),Vue.createVNode(_,{span:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(h,{bordered:!1,size:"small",title:l.value,class:"proCard"},{default:Vue.withCtx(()=>[o.value===1?(Vue.openBlock(),Vue.createBlock(A,{key:0})):Vue.createCommentVNode("",!0),o.value===2?(Vue.openBlock(),Vue.createBlock(s,{key:1})):Vue.createCommentVNode("",!0)]),_:1},8,["title"])]),_:1})]),_:1})}}}),S=w(E,[["__scopeId","data-v-21fc9a7e"]]);export{S as default}; diff --git a/plugin/console/web/assets/check-09a8a6df.js b/plugin/console/web/assets/check-b0b21f0d.js similarity index 91% rename from plugin/console/web/assets/check-09a8a6df.js rename to plugin/console/web/assets/check-b0b21f0d.js index faca9e8..ed36c9a 100644 --- a/plugin/console/web/assets/check-09a8a6df.js +++ b/plugin/console/web/assets/check-b0b21f0d.js @@ -1 +1 @@ -import{b as r}from"./index-c7d04dfb.js";import{d as n,l as i}from"./vendor-ec30964e.js";const a=n({id:"plugin-config",state:()=>({}),getters:{},actions:{async getConfig(e,t="global"){return this[e]||(this[e]={}),this[e][t]?this[e][t]:r(e,t,!0).then(u=>this[e][t]=u)}}}),p=Vue.defineComponent({props:{name:null,value:{type:Boolean}},emits:["update:value"],setup(e,{emit:t}){const u=e;return a().getConfig(i().params.id,u.name).catch(()=>t("update:value",!0)),(l,c)=>{const o=Vue.resolveComponent("n-alert");return e.value?(Vue.openBlock(),Vue.createBlock(o,{key:0,title:"当前功能受限",type:"error"},{default:Vue.withCtx(()=>[Vue.createTextVNode(" 当前实例未安装插件:"+Vue.toDisplayString(e.name),1)]),_:1})):Vue.createCommentVNode("",!0)}}});export{p as _}; +import{b as r}from"./index-cc631905.js";import{d as n,l as i}from"./vendor-ec30964e.js";const a=n({id:"plugin-config",state:()=>({}),getters:{},actions:{async getConfig(e,t="global"){return this[e]||(this[e]={}),this[e][t]?this[e][t]:r(e,t,!0).then(u=>this[e][t]=u)}}}),p=Vue.defineComponent({props:{name:null,value:{type:Boolean}},emits:["update:value"],setup(e,{emit:t}){const u=e;return a().getConfig(i().params.id,u.name).catch(()=>t("update:value",!0)),(l,c)=>{const o=Vue.resolveComponent("n-alert");return e.value?(Vue.openBlock(),Vue.createBlock(o,{key:0,title:"当前功能受限",type:"error"},{default:Vue.withCtx(()=>[Vue.createTextVNode(" 当前实例未安装插件:"+Vue.toDisplayString(e.name),1)]),_:1})):Vue.createCommentVNode("",!0)}}});export{p as _}; diff --git a/plugin/console/web/assets/detail-f6bc31d7.js b/plugin/console/web/assets/detail-4b56fa71.js similarity index 90% rename from plugin/console/web/assets/detail-f6bc31d7.js rename to plugin/console/web/assets/detail-4b56fa71.js index dc13ae6..c4f28c3 100644 --- a/plugin/console/web/assets/detail-f6bc31d7.js +++ b/plugin/console/web/assets/detail-4b56fa71.js @@ -1,3 +1,3 @@ -import{l as p}from"./vendor-ec30964e.js";import{s as i}from"./index-93e74700.js";const V=Vue.defineComponent({setup(c){const{id:l,logName:u}=p().params,o=Vue.ref([]),t=Vue.ref("");i({url:"/logrotate/api/get/"+u,method:"post",headers:{m7sid:l}}).then(e=>{o.value=e.content.split(` +import{l as p}from"./vendor-ec30964e.js";import{s as i}from"./index-c14b60e2.js";const V=Vue.defineComponent({setup(c){const{id:l,logName:u}=p().params,o=Vue.ref([]),t=Vue.ref("");i({url:"/logrotate/api/get/"+u,method:"post",headers:{m7sid:l}}).then(e=>{o.value=e.content.split(` `)});const r=Vue.computed(()=>o.value.filter(e=>e.includes(t.value)).join(` `));return(e,n)=>{const s=Vue.resolveComponent("n-input");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(s,{type:"text",value:t.value,"onUpdate:value":n[0]||(n[0]=a=>t.value=a),placeholder:"Filter logs"},null,8,["value"]),Vue.createElementVNode("pre",null,Vue.toDisplayString(Vue.unref(r)),1)])}}});export{V as default}; diff --git a/plugin/console/web/assets/detail-b6aa2f6d.js b/plugin/console/web/assets/detail-c19ab603.js similarity index 94% rename from plugin/console/web/assets/detail-b6aa2f6d.js rename to plugin/console/web/assets/detail-c19ab603.js index 3bcc02f..a2ce7c8 100644 --- a/plugin/console/web/assets/detail-b6aa2f6d.js +++ b/plugin/console/web/assets/detail-c19ab603.js @@ -1 +1 @@ -import{l as x}from"./vendor-ec30964e.js";import{l as y,n as b}from"./index-c7d04dfb.js";import{K as g,L as c,N as $,O as L,Q as w,U as A,V as N,W as E,X as S}from"./installCanvasRenderer-cb1ba546.js";import{Y as d}from"./index-01aec832.js";import{_ as k}from"./index-93e74700.js";import{i as I,a as T}from"./install-c0cf116b.js";const z={class:"events"},B={class:"events"},C={class:"events"},F=Vue.defineComponent({setup(M){g([$,I,T,L,w,A,N,E,S]);const f=x(),n=f.params.id,o=f.params.stream,i={trigger:"axis",axisPointer:{type:"line",animation:!1,axis:"x",label:{show:!0,formatter:({value:s})=>new Date(s).toLocaleTimeString(),backgroundColor:"rgba(50,50,50,0.7)"}}},r={showSymbol:!1,smooth:!0,type:"line",lineStyle:{width:1}},_=Vue.ref(0),l={type:"time",min:_,splitLine:{show:!1}},u=[{id:"dataZoomX",type:"slider",xAxisIndex:[0],filterMode:"filter"}],m=Vue.reactive({title:{text:o,left:"1%"},dataZoom:u,tooltip:i,xAxis:l,yAxis:[{name:"码率kbps",type:"value"},{name:"event",type:"value",min:0,max:100,show:!1,splitNumber:2,splitLine:{show:!1}}],series:[]}),v=Vue.reactive({tooltip:i,xAxis:l,dataZoom:u,yAxis:{name:"帧率fps",type:"value"},series:[]}),V=Vue.reactive({tooltip:i,xAxis:l,dataZoom:u,yAxis:{name:"缓冲大小",type:"value"},series:[]});return y(n,o+"/stream.yaml").then(s=>{const a=d.parse(s);_.value=a[0].time,m.series.push({yAxisIndex:1,type:"scatter",data:a.map(e=>[e.time,100]),labelLayout:{moveOverlap:"shiftY"},tooltip:{trigger:"item",formatter:({data:e})=>`${e.event}
${new Date(e.time).toLocaleTimeString()}`},markLine:{lineStyle:{type:"dashed"},data:a.map(e=>[{coord:[e.time,0],symbol:"none"},{coord:[e.time,90],symbol:"circle",name:e.event}])}})}),b(n,o).then(s=>{d.parse(s).forEach((e,O)=>{y(n,o+`/track/${e}.yaml`).then(h=>{const p=d.parse(h);m.series.push({yAxisIndex:0,name:e,...r,data:p.map(t=>({value:[t.time,t.bps>>10]}))}),v.series.push({name:e,...r,data:p.map(t=>({value:[t.time,t.fps]}))}),V.series.push({name:e,...r,data:p.map(t=>({value:[t.time,t.rb]}))})})})}),(s,a)=>(Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createElementVNode("div",z,[Vue.createVNode(Vue.unref(c),{class:"chart",option:Vue.unref(m),autoresize:""},null,8,["option"])]),Vue.createElementVNode("div",B,[Vue.createVNode(Vue.unref(c),{class:"chart",option:Vue.unref(v),autoresize:""},null,8,["option"])]),Vue.createElementVNode("div",C,[Vue.createVNode(Vue.unref(c),{class:"chart",option:Vue.unref(V),autoresize:""},null,8,["option"])])]))}}),Q=k(F,[["__scopeId","data-v-8e73e23e"]]);export{Q as default}; +import{l as x}from"./vendor-ec30964e.js";import{l as y,n as b}from"./index-cc631905.js";import{K as g,L as c,N as $,O as L,Q as w,U as A,V as N,W as E,X as S}from"./installCanvasRenderer-cb1ba546.js";import{Y as d}from"./index-01aec832.js";import{_ as k}from"./index-c14b60e2.js";import{i as I,a as T}from"./install-c0cf116b.js";const z={class:"events"},B={class:"events"},C={class:"events"},F=Vue.defineComponent({setup(M){g([$,I,T,L,w,A,N,E,S]);const f=x(),n=f.params.id,o=f.params.stream,i={trigger:"axis",axisPointer:{type:"line",animation:!1,axis:"x",label:{show:!0,formatter:({value:s})=>new Date(s).toLocaleTimeString(),backgroundColor:"rgba(50,50,50,0.7)"}}},r={showSymbol:!1,smooth:!0,type:"line",lineStyle:{width:1}},_=Vue.ref(0),l={type:"time",min:_,splitLine:{show:!1}},u=[{id:"dataZoomX",type:"slider",xAxisIndex:[0],filterMode:"filter"}],m=Vue.reactive({title:{text:o,left:"1%"},dataZoom:u,tooltip:i,xAxis:l,yAxis:[{name:"码率kbps",type:"value"},{name:"event",type:"value",min:0,max:100,show:!1,splitNumber:2,splitLine:{show:!1}}],series:[]}),v=Vue.reactive({tooltip:i,xAxis:l,dataZoom:u,yAxis:{name:"帧率fps",type:"value"},series:[]}),V=Vue.reactive({tooltip:i,xAxis:l,dataZoom:u,yAxis:{name:"缓冲大小",type:"value"},series:[]});return y(n,o+"/stream.yaml").then(s=>{const a=d.parse(s);_.value=a[0].time,m.series.push({yAxisIndex:1,type:"scatter",data:a.map(e=>[e.time,100]),labelLayout:{moveOverlap:"shiftY"},tooltip:{trigger:"item",formatter:({data:e})=>`${e.event}
${new Date(e.time).toLocaleTimeString()}`},markLine:{lineStyle:{type:"dashed"},data:a.map(e=>[{coord:[e.time,0],symbol:"none"},{coord:[e.time,90],symbol:"circle",name:e.event}])}})}),b(n,o).then(s=>{d.parse(s).forEach((e,O)=>{y(n,o+`/track/${e}.yaml`).then(h=>{const p=d.parse(h);m.series.push({yAxisIndex:0,name:e,...r,data:p.map(t=>({value:[t.time,t.bps>>10]}))}),v.series.push({name:e,...r,data:p.map(t=>({value:[t.time,t.fps]}))}),V.series.push({name:e,...r,data:p.map(t=>({value:[t.time,t.rb]}))})})})}),(s,a)=>(Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createElementVNode("div",z,[Vue.createVNode(Vue.unref(c),{class:"chart",option:Vue.unref(m),autoresize:""},null,8,["option"])]),Vue.createElementVNode("div",B,[Vue.createVNode(Vue.unref(c),{class:"chart",option:Vue.unref(v),autoresize:""},null,8,["option"])]),Vue.createElementVNode("div",C,[Vue.createVNode(Vue.unref(c),{class:"chart",option:Vue.unref(V),autoresize:""},null,8,["option"])])]))}}),Q=k(F,[["__scopeId","data-v-8e73e23e"]]);export{Q as default}; diff --git a/plugin/console/web/assets/history-4acb0e33.js b/plugin/console/web/assets/history-2a89c923.js similarity index 99% rename from plugin/console/web/assets/history-4acb0e33.js rename to plugin/console/web/assets/history-2a89c923.js index 7a0f04e..dbec041 100644 --- a/plugin/console/web/assets/history-4acb0e33.js +++ b/plugin/console/web/assets/history-2a89c923.js @@ -1 +1 @@ -import{i as se}from"./index-93e74700.js";import{T as ue,B as H}from"./TableAction-b6863a0a.js";import{c as le,s as de}from"./index-c7d04dfb.js";import{l as ce}from"./vendor-ec30964e.js";import{_ as A,T as C,B,p as L,a as b,c as he,b as pe,i as fe,d as ve,g as me,P as ye,G as ge,R as xe,f as Te,C as Ne,S as we,u as k,e as Se,h as Ie,H as De,s as Ce,j as Ae,k as _e,l as Ve,m as Be,r as R,n as Pe,o as D,q as P,t as Ee,v as ae,w as Fe,x as Le,y as be,z as ke,A as Re,D as ze,E as Me,F as Xe,M as Ze,I as Ge,J as Ye,K as $e,L as W,N as Oe,O as He,Q as We,U as je,V as Ue,W as qe,X as Je}from"./installCanvasRenderer-cb1ba546.js";import{i as Ke}from"./install-40c3b04b.js";var j=b,Qe=function(a){A(t,a);function t(e){var r=a.call(this)||this;return r.type="view",r.dimensions=["x","y"],r._roamTransformable=new C,r._rawTransformable=new C,r.name=e,r}return t.prototype.setBoundingRect=function(e,r,n,o){return this._rect=new B(e,r,n,o),this._rect},t.prototype.getBoundingRect=function(){return this._rect},t.prototype.setViewRect=function(e,r,n,o){this._transformTo(e,r,n,o),this._viewRect=new B(e,r,n,o)},t.prototype._transformTo=function(e,r,n,o){var i=this.getBoundingRect(),s=this._rawTransformable;s.transform=i.calculateTransform(new B(e,r,n,o));var c=s.parent;s.parent=null,s.decomposeTransform(),s.parent=c,this._updateTransform()},t.prototype.setCenter=function(e,r){e&&(this._center=[L(e[0],r.getWidth()),L(e[1],r.getHeight())],this._updateCenterAndZoom())},t.prototype.setZoom=function(e){e=e||1;var r=this.zoomLimit;r&&(r.max!=null&&(e=Math.min(r.max,e)),r.min!=null&&(e=Math.max(r.min,e))),this._zoom=e,this._updateCenterAndZoom()},t.prototype.getDefaultCenter=function(){var e=this.getBoundingRect(),r=e.x+e.width/2,n=e.y+e.height/2;return[r,n]},t.prototype.getCenter=function(){return this._center||this.getDefaultCenter()},t.prototype.getZoom=function(){return this._zoom||1},t.prototype.getRoamTransform=function(){return this._roamTransformable.getLocalTransform()},t.prototype._updateCenterAndZoom=function(){var e=this._rawTransformable.getLocalTransform(),r=this._roamTransformable,n=this.getDefaultCenter(),o=this.getCenter(),i=this.getZoom();o=b([],o,e),n=b([],n,e),r.originX=o[0],r.originY=o[1],r.x=n[0]-o[0],r.y=n[1]-o[1],r.scaleX=r.scaleY=i,this._updateTransform()},t.prototype._updateTransform=function(){var e=this._roamTransformable,r=this._rawTransformable;r.parent=e,e.updateTransform(),r.updateTransform(),he(this.transform||(this.transform=[]),r.transform||pe()),this._rawTransform=r.getLocalTransform(),this.invTransform=this.invTransform||[],fe(this.invTransform,this.transform),this.decomposeTransform()},t.prototype.getTransformInfo=function(){var e=this._rawTransformable,r=this._roamTransformable,n=new C;return n.transform=r.transform,n.decomposeTransform(),{roam:{x:n.x,y:n.y,scaleX:n.scaleX,scaleY:n.scaleY},raw:{x:e.x,y:e.y,scaleX:e.scaleX,scaleY:e.scaleY}}},t.prototype.getViewRect=function(){return this._viewRect},t.prototype.getViewRectAfterRoam=function(){var e=this.getBoundingRect().clone();return e.applyTransform(this.transform),e},t.prototype.dataToPoint=function(e,r,n){var o=r?this._rawTransform:this.transform;return n=n||[],o?j(n,e,o):ve(n,e)},t.prototype.pointToData=function(e){var r=this.invTransform;return r?j([],e,r):[e[0],e[1]]},t.prototype.convertToPixel=function(e,r,n){var o=U(r);return o===this?o.dataToPoint(n):null},t.prototype.convertFromPixel=function(e,r,n){var o=U(r);return o===this?o.pointToData(n):null},t.prototype.containPoint=function(e){return this.getViewRectAfterRoam().contain(e[0],e[1])},t.dimensions=["x","y"],t}(C);function U(a){var t=a.seriesModel;return t?t.coordinateSystem:null}const et=Qe;function q(a,t){return a.pointToProjected?a.pointToProjected(t):a.pointToData(t)}function tt(a,t,e,r){var n=a.getZoom(),o=a.getCenter(),i=t.zoom,s=a.projectedToPoint?a.projectedToPoint(o):a.dataToPoint(o);if(t.dx!=null&&t.dy!=null&&(s[0]-=t.dx,s[1]-=t.dy,a.setCenter(q(a,s),r)),i!=null){if(e){var c=e.min||0,u=e.max||1/0;i=Math.max(Math.min(n*i,u),c)/n}a.scaleX*=i,a.scaleY*=i;var l=(t.originX-a.x)*(i-1),h=(t.originY-a.y)*(i-1);a.x-=l,a.y-=h,a.updateTransform(),a.setCenter(q(a,s),r),a.setZoom(i*n)}return{center:a.getCenter(),zoom:a.getZoom()}}function at(a,t,e){var r=a.target;r.x+=t,r.y+=e,r.dirty()}function rt(a,t,e,r){var n=a.target,o=a.zoomLimit,i=a.zoom=a.zoom||1;if(i*=t,o){var s=o.min||0,c=o.max||1/0;i=Math.max(Math.min(c,i),s)}var u=i/a.zoom;a.zoom=i,n.x-=(e-n.x)*(u-1),n.y-=(r-n.y)*(u-1),n.scaleX*=u,n.scaleY*=u,n.dirty()}var nt={axisPointer:1,tooltip:1,brush:1};function it(a,t,e){var r=t.getComponentByElement(a.topTarget),n=r&&r.coordinateSystem;return r&&r!==e&&!nt.hasOwnProperty(r.mainType)&&n&&n.model!==e}function ot(a){var t=a;t.hierNode={defaultAncestor:null,ancestor:t,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var e=[t],r,n;r=e.pop();)if(n=r.children,r.isExpand&&n.length)for(var o=n.length,i=o-1;i>=0;i--){var s=n[i];s.hierNode={defaultAncestor:null,ancestor:s,prelim:0,modifier:0,change:0,shift:0,i,thread:null},e.push(s)}}function st(a,t){var e=a.isExpand?a.children:[],r=a.parentNode.children,n=a.hierNode.i?r[a.hierNode.i-1]:null;if(e.length){dt(a);var o=(e[0].hierNode.prelim+e[e.length-1].hierNode.prelim)/2;n?(a.hierNode.prelim=n.hierNode.prelim+t(a,n),a.hierNode.modifier=a.hierNode.prelim-o):a.hierNode.prelim=o}else n&&(a.hierNode.prelim=n.hierNode.prelim+t(a,n));a.parentNode.hierNode.defaultAncestor=ct(a,n,a.parentNode.hierNode.defaultAncestor||r[0],t)}function ut(a){var t=a.hierNode.prelim+a.parentNode.hierNode.modifier;a.setLayout({x:t},!0),a.hierNode.modifier+=a.parentNode.hierNode.modifier}function J(a){return arguments.length?a:ft}function I(a,t){return a-=Math.PI/2,{x:t*Math.cos(a),y:t*Math.sin(a)}}function lt(a,t){return me(a.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()})}function dt(a){for(var t=a.children,e=t.length,r=0,n=0;--e>=0;){var o=t[e];o.hierNode.prelim+=r,o.hierNode.modifier+=r,n+=o.hierNode.change,r+=o.hierNode.shift+n}}function ct(a,t,e,r){if(t){for(var n=a,o=a,i=o.parentNode.children[0],s=t,c=n.hierNode.modifier,u=o.hierNode.modifier,l=i.hierNode.modifier,h=s.hierNode.modifier;s=E(s),o=F(o),s&&o;){n=E(n),i=F(i),n.hierNode.ancestor=a;var d=s.hierNode.prelim+h-o.hierNode.prelim-u+r(s,o);d>0&&(pt(ht(s,a,e),a,d),u+=d,c+=d),h+=s.hierNode.modifier,u+=o.hierNode.modifier,c+=n.hierNode.modifier,l+=i.hierNode.modifier}s&&!E(n)&&(n.hierNode.thread=s,n.hierNode.modifier+=h-c),o&&!F(i)&&(i.hierNode.thread=o,i.hierNode.modifier+=u-l,e=a)}return e}function E(a){var t=a.children;return t.length&&a.isExpand?t[t.length-1]:a.hierNode.thread}function F(a){var t=a.children;return t.length&&a.isExpand?t[0]:a.hierNode.thread}function ht(a,t,e){return a.hierNode.ancestor.parentNode===t.parentNode?a.hierNode.ancestor:e}function pt(a,t,e){var r=e/(t.hierNode.i-a.hierNode.i);t.hierNode.change-=r,t.hierNode.shift+=e,t.hierNode.modifier+=e,t.hierNode.prelim+=e,a.hierNode.change+=r}function ft(a,t){return a.parentNode===t.parentNode?1:2}var vt=function(){function a(){this.parentPoint=[],this.childPoints=[]}return a}(),mt=function(a){A(t,a);function t(e){return a.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new vt},t.prototype.buildPath=function(e,r){var n=r.childPoints,o=n.length,i=r.parentPoint,s=n[0],c=n[o-1];if(o===1){e.moveTo(i[0],i[1]),e.lineTo(s[0],s[1]);return}var u=r.orient,l=u==="TB"||u==="BT"?0:1,h=1-l,d=L(r.forkPosition,1),f=[];f[l]=i[l],f[h]=i[h]+(c[h]-i[h])*d,e.moveTo(i[0],i[1]),e.lineTo(f[0],f[1]),e.moveTo(s[0],s[1]),f[l]=s[l],e.lineTo(f[0],f[1]),f[l]=c[l],e.lineTo(f[0],f[1]),e.lineTo(c[0],c[1]);for(var v=1;vx.x,w||(g=g-Math.PI));var ie=w?"left":"right",X=s.getModel("label"),Z=X.get("rotate"),oe=Z*(Math.PI/180),G=y.getTextContent();G&&(y.setTextConfig({position:X.get("position")||ie,rotation:Z==null?-g:oe,origin:"center"}),G.setStyle("verticalAlign","middle"))}var V=s.get(["emphasis","focus"]),Y=V==="relative"?Se(i.getAncestorsIndices(),i.getDescendantIndices()):V==="ancestor"?i.getAncestorsIndices():V==="descendant"?i.getDescendantIndices():null;Y&&(Ie(e).focus=Y),gt(n,i,l,e,v,f,p,r),e.__edge&&(e.onHoverStateChange=function($){if($!=="blur"){var O=i.parentNode&&a.getItemGraphicEl(i.parentNode.dataIndex);O&&O.hoverState===De||Ce(e.__edge,$)}})}function gt(a,t,e,r,n,o,i,s){var c=t.getModel(),u=a.get("edgeShape"),l=a.get("layout"),h=a.getOrient(),d=a.get(["lineStyle","curveness"]),f=a.get("edgeForkPosition"),v=c.getModel("lineStyle").getLineStyle(),p=r.__edge;if(u==="curve")t.parentNode&&t.parentNode!==e&&(p||(p=r.__edge=new Ae({shape:z(l,h,d,n,n)})),k(p,{shape:z(l,h,d,o,i)},a));else if(u==="polyline"&&l==="orthogonal"&&t!==e&&t.children&&t.children.length!==0&&t.isExpand===!0){for(var y=t.children,T=[],x=0;xe&&(e=n.height)}this.height=e+1},a.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,r=this.children,n=r.length;e=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},a.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},a.prototype.getModel=function(t){if(!(this.dataIndex<0)){var e=this.hostTree,r=e.data.getItemModel(this.dataIndex);return r.getModel(t)}},a.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},a.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},a.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},a.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},a.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},a.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;ec&&(c=h.depth)});var u=e.expandAndCollapse,l=u&&e.initialTreeDepth>=0?e.initialTreeDepth:c;return i.root.eachNode("preorder",function(h){var d=h.hostTree.data.getRawDataItem(h.dataIndex);h.isExpand=d&&d.collapsed!=null?!d.collapsed:h.depth<=l}),i.data},t.prototype.getOrient=function(){var e=this.get("orient");return e==="horizontal"?e="LR":e==="vertical"&&(e="TB"),e},t.prototype.setZoom=function(e){this.option.zoom=e},t.prototype.setCenter=function(e){this.option.center=e},t.prototype.formatTooltip=function(e,r,n){for(var o=this.getData().tree,i=o.root.children[0],s=o.getNodeByDataIndex(e),c=s.getValue(),u=s.name;s&&s!==i;)u=s.parentNode.name+"."+u,s=s.parentNode;return Ge("nameValue",{name:u,value:c,noValue:isNaN(c)||c==null})},t.prototype.getDataParams=function(e){var r=a.prototype.getDataParams.apply(this,arguments),n=this.getData().tree.getNodeByDataIndex(e);return r.treeAncestors=Pt(n,this),r.collapsed=!n.isExpand,r},t.type="series.tree",t.layoutMode="box",t.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t}(Ye);const Ft=Et;function Lt(a,t,e){for(var r=[a],n=[],o;o=r.pop();)if(n.push(o),o.isExpand){var i=o.children;if(i.length)for(var s=0;s=0;o--)e.push(n[o])}}function bt(a,t){a.eachSeriesByType("tree",function(e){kt(e,t)})}function kt(a,t){var e=lt(a,t);a.layoutInfo=e;var r=a.get("layout"),n=0,o=0,i=null;r==="radial"?(n=2*Math.PI,o=Math.min(e.height,e.width)/2,i=J(function(m,g){return(m.parentNode===g.parentNode?1:2)/m.depth})):(n=e.width,o=e.height,i=J());var s=a.getData().tree.root,c=s.children[0];if(c){ot(s),Lt(c,st,i),s.hierNode.modifier=-c.hierNode.prelim,S(c,ut);var u=c,l=c,h=c;S(c,function(m){var g=m.getLayout().x;gl.getLayout().x&&(l=m),m.depth>h.depth&&(h=m)});var d=u===l?1:i(u,l)/2,f=d-u.getLayout().x,v=0,p=0,y=0,T=0;if(r==="radial")v=n/(l.getLayout().x+d+f),p=o/(h.depth-1||1),S(c,function(m){y=(m.getLayout().x+f)*v,T=(m.depth-1)*p;var g=I(y,T);m.setLayout({x:g.x,y:g.y,rawX:y,rawY:T},!0)});else{var x=a.getOrient();x==="RL"||x==="LR"?(p=o/(l.getLayout().x+d+f),v=n/(h.depth-1||1),S(c,function(m){T=(m.getLayout().x+f)*p,y=x==="LR"?(m.depth-1)*v:n-(m.depth-1)*v,m.setLayout({x:y,y:T},!0)})):(x==="TB"||x==="BT")&&(v=n/(l.getLayout().x+d+f),p=o/(h.depth-1||1),S(c,function(m){y=(m.getLayout().x+f)*v,T=x==="TB"?(m.depth-1)*p:o-(m.depth-1)*p,m.setLayout({x:y,y:T},!0)}))}}}function Rt(a){a.eachSeriesByType("tree",function(t){var e=t.getData(),r=e.tree;r.eachNode(function(n){var o=n.getModel(),i=o.getModel("itemStyle").getItemStyle(),s=e.ensureUniqueItemVisual(n.dataIndex,"style");ae(s,i)})})}function zt(a){a.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},function(r){var n=t.dataIndex,o=r.getData().tree,i=o.getNodeByDataIndex(n);i.isExpand=!i.isExpand})}),a.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},function(t,e,r){e.eachComponent({mainType:"series",subType:"tree",query:t},function(n){var o=n.coordinateSystem,i=tt(o,t,void 0,r);n.setCenter&&n.setCenter(i.center),n.setZoom&&n.setZoom(i.zoom)})})}function Mt(a){a.registerChartView(xt),a.registerSeriesModel(Ft),a.registerLayout(bt),a.registerVisual(Rt),zt(a)}const Xt=(a,t)=>{const e=t.value(0),r=t.coord([t.value(1),e]),o=t.coord([t.value(2),e])[0]-r[0];return{type:"rect",transition:["shape"],shape:{x:r[0],y:r[1],width:o,height:20,r:2},style:{fill:["#5470C6","#91CC75","#EE6666","#FCCE10"][t.value(5)]},emphasis:{style:{stroke:"#000"}},textConfig:{position:"insideLeft"},textContent:{style:{text:t.value(3),fontFamily:"Verdana",fill:"#FFF",width:o-4,overflow:"truncate",ellipsis:"..",truncateMinChar:1},emphasis:{style:{stroke:"#000",lineWidth:.5}}}}};function Zt(a){return{tooltip:{formatter:t=>t.value[4]},dataZoom:[{type:"inside",id:"insideX",xAxisIndex:0,filterMode:"weakFilter",zoomOnMouseWheel:!1,moveOnMouseMove:!0},{id:"dataZoomX",type:"slider",xAxisIndex:0,filterMode:"filter"},{type:"slider",yAxisIndex:0,showDetail:!1},{type:"inside",id:"insideY",yAxisIndex:0,zoomOnMouseWheel:!1,moveOnMouseMove:!0,moveOnMouseWheel:!0}],xAxis:{type:"time",splitLine:{show:!1}},yAxis:{type:"category"},series:[{type:"custom",renderItem:Xt,encode:{x:[1,2],y:0},data:a.map(t=>({value:[t.id,new Date(t.startTime),new Date(t.endTime),`${t.owner} ${t.reason}`,t.description,t.type]}))}]}}function Gt(a){const t=new Map,e=[];return a.forEach(r=>{t.set(r.id,{...r,name:r.owner,value:r.id,children:[]})}),a.forEach(r=>{const n=t.get(r.id);if(r.parentId!==void 0){const o=t.get(r.parentId);o&&o.children.push(n)}else e.push(n)}),console.log(e),e}function Yt(a){return{series:[{type:"tree",data:Gt(a),top:"1%",left:"7%",bottom:"1%",right:"20%",symbolSize:7,label:{position:"left",verticalAlign:"middle",align:"right",fontSize:9},leaves:{label:{position:"right",verticalAlign:"middle",align:"left"}},emphasis:{focus:"descendant"},expandAndCollapse:!0,animationDuration:550,animationDurationUpdate:750}]}}const $t={style:{width:"100%",height:"850px"}},Ot={style:{width:"100%",height:"850px"}},Kt=Vue.defineComponent({setup(a){$e([Mt,Ke,Oe,He,We,je,Ue,qe,Je]);const t=ce().params.id,{t:e}=se.global,r=Vue.ref(),n=Vue.ref(),o=Vue.ref(),i=[{title:e("ID"),key:"id",width:80},{title:e("进程号"),key:"pid",width:100},{title:e("开始时间"),key:"startTime",width:200},{title:e("结束时间"),key:"endTime",width:200},{title:e("启动参数"),key:"args"}],s={width:200,title:e("操作"),key:"action",render(d){return Vue.h(ue,{style:"button",actions:[{label:e("查询任务"),type:"primary",onClick:()=>h(d)}]})}},c=[{title:e("ID"),key:"id",sorter:"default",width:80},{title:e("父级"),key:"parentId",sorter:"default",width:80},{title:e("类型"),key:"type",filter:"default",width:50},{title:e("所属"),key:"owner",filter:"default",width:200},{title:e("开始时间"),key:"startTime",sorter:"default",width:200},{title:e("结束时间"),sorter:"default",key:"endTime",width:200},{title:e("关闭原因"),key:"reason",filter:"default",width:200},{title:e("描述"),key:"description"}],u=Vue.ref();Vue.onMounted(async()=>{u.value=await le()});const l=Vue.ref();async function h(d){l.value=d,r.value=await de(t,{sessionId:d.id}),r.value.unshift({id:0,startTime:d.startTime,endTime:d.endTime,description:d.args,type:2,owner:"root",reason:"exit"}),n.value=Zt(r.value),o.value=Yt(r.value)}return(d,f)=>{const v=Vue.resolveComponent("n-tab-pane"),p=Vue.resolveComponent("n-tabs");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(p,{type:"line",animated:""},{default:Vue.withCtx(()=>[Vue.createVNode(v,{name:"sessionTable",tab:d.$t("会话历史记录")},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(H),{columns:i,dataSource:u.value,pagination:!1,"row-key":y=>y.id,"scroll-x":1090,actionColumn:s},null,8,["dataSource","row-key"])]),_:1},8,["tab"]),Vue.createVNode(v,{name:"taskTable",tab:d.$t("任务历史记录表")},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(H),{title:l.value.args,columns:c,dataSource:r.value,pagination:!1,"row-key":y=>y.sessionId+"-"+y.id,"scroll-x":1090},null,8,["title","dataSource","row-key"])]),_:1},8,["tab"]),Vue.createVNode(v,{name:"gantt",tab:d.$t("任务历史甘特图")},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",$t,[Vue.createVNode(Vue.unref(W),{class:"chart",option:n.value,autoresize:""},null,8,["option"])])]),_:1},8,["tab"]),Vue.createVNode(v,{name:"tree",tab:d.$t("任务历史树状图")},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",Ot,[Vue.createVNode(Vue.unref(W),{class:"chart",option:o.value,autoresize:""},null,8,["option"])])]),_:1},8,["tab"])]),_:1})])}}});export{Kt as default}; +import{i as se}from"./index-c14b60e2.js";import{T as ue,B as H}from"./TableAction-45c049b5.js";import{c as le,s as de}from"./index-cc631905.js";import{l as ce}from"./vendor-ec30964e.js";import{_ as A,T as C,B,p as L,a as b,c as he,b as pe,i as fe,d as ve,g as me,P as ye,G as ge,R as xe,f as Te,C as Ne,S as we,u as k,e as Se,h as Ie,H as De,s as Ce,j as Ae,k as _e,l as Ve,m as Be,r as R,n as Pe,o as D,q as P,t as Ee,v as ae,w as Fe,x as Le,y as be,z as ke,A as Re,D as ze,E as Me,F as Xe,M as Ze,I as Ge,J as Ye,K as $e,L as W,N as Oe,O as He,Q as We,U as je,V as Ue,W as qe,X as Je}from"./installCanvasRenderer-cb1ba546.js";import{i as Ke}from"./install-40c3b04b.js";var j=b,Qe=function(a){A(t,a);function t(e){var r=a.call(this)||this;return r.type="view",r.dimensions=["x","y"],r._roamTransformable=new C,r._rawTransformable=new C,r.name=e,r}return t.prototype.setBoundingRect=function(e,r,n,o){return this._rect=new B(e,r,n,o),this._rect},t.prototype.getBoundingRect=function(){return this._rect},t.prototype.setViewRect=function(e,r,n,o){this._transformTo(e,r,n,o),this._viewRect=new B(e,r,n,o)},t.prototype._transformTo=function(e,r,n,o){var i=this.getBoundingRect(),s=this._rawTransformable;s.transform=i.calculateTransform(new B(e,r,n,o));var c=s.parent;s.parent=null,s.decomposeTransform(),s.parent=c,this._updateTransform()},t.prototype.setCenter=function(e,r){e&&(this._center=[L(e[0],r.getWidth()),L(e[1],r.getHeight())],this._updateCenterAndZoom())},t.prototype.setZoom=function(e){e=e||1;var r=this.zoomLimit;r&&(r.max!=null&&(e=Math.min(r.max,e)),r.min!=null&&(e=Math.max(r.min,e))),this._zoom=e,this._updateCenterAndZoom()},t.prototype.getDefaultCenter=function(){var e=this.getBoundingRect(),r=e.x+e.width/2,n=e.y+e.height/2;return[r,n]},t.prototype.getCenter=function(){return this._center||this.getDefaultCenter()},t.prototype.getZoom=function(){return this._zoom||1},t.prototype.getRoamTransform=function(){return this._roamTransformable.getLocalTransform()},t.prototype._updateCenterAndZoom=function(){var e=this._rawTransformable.getLocalTransform(),r=this._roamTransformable,n=this.getDefaultCenter(),o=this.getCenter(),i=this.getZoom();o=b([],o,e),n=b([],n,e),r.originX=o[0],r.originY=o[1],r.x=n[0]-o[0],r.y=n[1]-o[1],r.scaleX=r.scaleY=i,this._updateTransform()},t.prototype._updateTransform=function(){var e=this._roamTransformable,r=this._rawTransformable;r.parent=e,e.updateTransform(),r.updateTransform(),he(this.transform||(this.transform=[]),r.transform||pe()),this._rawTransform=r.getLocalTransform(),this.invTransform=this.invTransform||[],fe(this.invTransform,this.transform),this.decomposeTransform()},t.prototype.getTransformInfo=function(){var e=this._rawTransformable,r=this._roamTransformable,n=new C;return n.transform=r.transform,n.decomposeTransform(),{roam:{x:n.x,y:n.y,scaleX:n.scaleX,scaleY:n.scaleY},raw:{x:e.x,y:e.y,scaleX:e.scaleX,scaleY:e.scaleY}}},t.prototype.getViewRect=function(){return this._viewRect},t.prototype.getViewRectAfterRoam=function(){var e=this.getBoundingRect().clone();return e.applyTransform(this.transform),e},t.prototype.dataToPoint=function(e,r,n){var o=r?this._rawTransform:this.transform;return n=n||[],o?j(n,e,o):ve(n,e)},t.prototype.pointToData=function(e){var r=this.invTransform;return r?j([],e,r):[e[0],e[1]]},t.prototype.convertToPixel=function(e,r,n){var o=U(r);return o===this?o.dataToPoint(n):null},t.prototype.convertFromPixel=function(e,r,n){var o=U(r);return o===this?o.pointToData(n):null},t.prototype.containPoint=function(e){return this.getViewRectAfterRoam().contain(e[0],e[1])},t.dimensions=["x","y"],t}(C);function U(a){var t=a.seriesModel;return t?t.coordinateSystem:null}const et=Qe;function q(a,t){return a.pointToProjected?a.pointToProjected(t):a.pointToData(t)}function tt(a,t,e,r){var n=a.getZoom(),o=a.getCenter(),i=t.zoom,s=a.projectedToPoint?a.projectedToPoint(o):a.dataToPoint(o);if(t.dx!=null&&t.dy!=null&&(s[0]-=t.dx,s[1]-=t.dy,a.setCenter(q(a,s),r)),i!=null){if(e){var c=e.min||0,u=e.max||1/0;i=Math.max(Math.min(n*i,u),c)/n}a.scaleX*=i,a.scaleY*=i;var l=(t.originX-a.x)*(i-1),h=(t.originY-a.y)*(i-1);a.x-=l,a.y-=h,a.updateTransform(),a.setCenter(q(a,s),r),a.setZoom(i*n)}return{center:a.getCenter(),zoom:a.getZoom()}}function at(a,t,e){var r=a.target;r.x+=t,r.y+=e,r.dirty()}function rt(a,t,e,r){var n=a.target,o=a.zoomLimit,i=a.zoom=a.zoom||1;if(i*=t,o){var s=o.min||0,c=o.max||1/0;i=Math.max(Math.min(c,i),s)}var u=i/a.zoom;a.zoom=i,n.x-=(e-n.x)*(u-1),n.y-=(r-n.y)*(u-1),n.scaleX*=u,n.scaleY*=u,n.dirty()}var nt={axisPointer:1,tooltip:1,brush:1};function it(a,t,e){var r=t.getComponentByElement(a.topTarget),n=r&&r.coordinateSystem;return r&&r!==e&&!nt.hasOwnProperty(r.mainType)&&n&&n.model!==e}function ot(a){var t=a;t.hierNode={defaultAncestor:null,ancestor:t,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var e=[t],r,n;r=e.pop();)if(n=r.children,r.isExpand&&n.length)for(var o=n.length,i=o-1;i>=0;i--){var s=n[i];s.hierNode={defaultAncestor:null,ancestor:s,prelim:0,modifier:0,change:0,shift:0,i,thread:null},e.push(s)}}function st(a,t){var e=a.isExpand?a.children:[],r=a.parentNode.children,n=a.hierNode.i?r[a.hierNode.i-1]:null;if(e.length){dt(a);var o=(e[0].hierNode.prelim+e[e.length-1].hierNode.prelim)/2;n?(a.hierNode.prelim=n.hierNode.prelim+t(a,n),a.hierNode.modifier=a.hierNode.prelim-o):a.hierNode.prelim=o}else n&&(a.hierNode.prelim=n.hierNode.prelim+t(a,n));a.parentNode.hierNode.defaultAncestor=ct(a,n,a.parentNode.hierNode.defaultAncestor||r[0],t)}function ut(a){var t=a.hierNode.prelim+a.parentNode.hierNode.modifier;a.setLayout({x:t},!0),a.hierNode.modifier+=a.parentNode.hierNode.modifier}function J(a){return arguments.length?a:ft}function I(a,t){return a-=Math.PI/2,{x:t*Math.cos(a),y:t*Math.sin(a)}}function lt(a,t){return me(a.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()})}function dt(a){for(var t=a.children,e=t.length,r=0,n=0;--e>=0;){var o=t[e];o.hierNode.prelim+=r,o.hierNode.modifier+=r,n+=o.hierNode.change,r+=o.hierNode.shift+n}}function ct(a,t,e,r){if(t){for(var n=a,o=a,i=o.parentNode.children[0],s=t,c=n.hierNode.modifier,u=o.hierNode.modifier,l=i.hierNode.modifier,h=s.hierNode.modifier;s=E(s),o=F(o),s&&o;){n=E(n),i=F(i),n.hierNode.ancestor=a;var d=s.hierNode.prelim+h-o.hierNode.prelim-u+r(s,o);d>0&&(pt(ht(s,a,e),a,d),u+=d,c+=d),h+=s.hierNode.modifier,u+=o.hierNode.modifier,c+=n.hierNode.modifier,l+=i.hierNode.modifier}s&&!E(n)&&(n.hierNode.thread=s,n.hierNode.modifier+=h-c),o&&!F(i)&&(i.hierNode.thread=o,i.hierNode.modifier+=u-l,e=a)}return e}function E(a){var t=a.children;return t.length&&a.isExpand?t[t.length-1]:a.hierNode.thread}function F(a){var t=a.children;return t.length&&a.isExpand?t[0]:a.hierNode.thread}function ht(a,t,e){return a.hierNode.ancestor.parentNode===t.parentNode?a.hierNode.ancestor:e}function pt(a,t,e){var r=e/(t.hierNode.i-a.hierNode.i);t.hierNode.change-=r,t.hierNode.shift+=e,t.hierNode.modifier+=e,t.hierNode.prelim+=e,a.hierNode.change+=r}function ft(a,t){return a.parentNode===t.parentNode?1:2}var vt=function(){function a(){this.parentPoint=[],this.childPoints=[]}return a}(),mt=function(a){A(t,a);function t(e){return a.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new vt},t.prototype.buildPath=function(e,r){var n=r.childPoints,o=n.length,i=r.parentPoint,s=n[0],c=n[o-1];if(o===1){e.moveTo(i[0],i[1]),e.lineTo(s[0],s[1]);return}var u=r.orient,l=u==="TB"||u==="BT"?0:1,h=1-l,d=L(r.forkPosition,1),f=[];f[l]=i[l],f[h]=i[h]+(c[h]-i[h])*d,e.moveTo(i[0],i[1]),e.lineTo(f[0],f[1]),e.moveTo(s[0],s[1]),f[l]=s[l],e.lineTo(f[0],f[1]),f[l]=c[l],e.lineTo(f[0],f[1]),e.lineTo(c[0],c[1]);for(var v=1;vx.x,w||(g=g-Math.PI));var ie=w?"left":"right",X=s.getModel("label"),Z=X.get("rotate"),oe=Z*(Math.PI/180),G=y.getTextContent();G&&(y.setTextConfig({position:X.get("position")||ie,rotation:Z==null?-g:oe,origin:"center"}),G.setStyle("verticalAlign","middle"))}var V=s.get(["emphasis","focus"]),Y=V==="relative"?Se(i.getAncestorsIndices(),i.getDescendantIndices()):V==="ancestor"?i.getAncestorsIndices():V==="descendant"?i.getDescendantIndices():null;Y&&(Ie(e).focus=Y),gt(n,i,l,e,v,f,p,r),e.__edge&&(e.onHoverStateChange=function($){if($!=="blur"){var O=i.parentNode&&a.getItemGraphicEl(i.parentNode.dataIndex);O&&O.hoverState===De||Ce(e.__edge,$)}})}function gt(a,t,e,r,n,o,i,s){var c=t.getModel(),u=a.get("edgeShape"),l=a.get("layout"),h=a.getOrient(),d=a.get(["lineStyle","curveness"]),f=a.get("edgeForkPosition"),v=c.getModel("lineStyle").getLineStyle(),p=r.__edge;if(u==="curve")t.parentNode&&t.parentNode!==e&&(p||(p=r.__edge=new Ae({shape:z(l,h,d,n,n)})),k(p,{shape:z(l,h,d,o,i)},a));else if(u==="polyline"&&l==="orthogonal"&&t!==e&&t.children&&t.children.length!==0&&t.isExpand===!0){for(var y=t.children,T=[],x=0;xe&&(e=n.height)}this.height=e+1},a.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,r=this.children,n=r.length;e=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},a.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},a.prototype.getModel=function(t){if(!(this.dataIndex<0)){var e=this.hostTree,r=e.data.getItemModel(this.dataIndex);return r.getModel(t)}},a.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},a.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},a.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},a.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},a.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},a.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;ec&&(c=h.depth)});var u=e.expandAndCollapse,l=u&&e.initialTreeDepth>=0?e.initialTreeDepth:c;return i.root.eachNode("preorder",function(h){var d=h.hostTree.data.getRawDataItem(h.dataIndex);h.isExpand=d&&d.collapsed!=null?!d.collapsed:h.depth<=l}),i.data},t.prototype.getOrient=function(){var e=this.get("orient");return e==="horizontal"?e="LR":e==="vertical"&&(e="TB"),e},t.prototype.setZoom=function(e){this.option.zoom=e},t.prototype.setCenter=function(e){this.option.center=e},t.prototype.formatTooltip=function(e,r,n){for(var o=this.getData().tree,i=o.root.children[0],s=o.getNodeByDataIndex(e),c=s.getValue(),u=s.name;s&&s!==i;)u=s.parentNode.name+"."+u,s=s.parentNode;return Ge("nameValue",{name:u,value:c,noValue:isNaN(c)||c==null})},t.prototype.getDataParams=function(e){var r=a.prototype.getDataParams.apply(this,arguments),n=this.getData().tree.getNodeByDataIndex(e);return r.treeAncestors=Pt(n,this),r.collapsed=!n.isExpand,r},t.type="series.tree",t.layoutMode="box",t.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t}(Ye);const Ft=Et;function Lt(a,t,e){for(var r=[a],n=[],o;o=r.pop();)if(n.push(o),o.isExpand){var i=o.children;if(i.length)for(var s=0;s=0;o--)e.push(n[o])}}function bt(a,t){a.eachSeriesByType("tree",function(e){kt(e,t)})}function kt(a,t){var e=lt(a,t);a.layoutInfo=e;var r=a.get("layout"),n=0,o=0,i=null;r==="radial"?(n=2*Math.PI,o=Math.min(e.height,e.width)/2,i=J(function(m,g){return(m.parentNode===g.parentNode?1:2)/m.depth})):(n=e.width,o=e.height,i=J());var s=a.getData().tree.root,c=s.children[0];if(c){ot(s),Lt(c,st,i),s.hierNode.modifier=-c.hierNode.prelim,S(c,ut);var u=c,l=c,h=c;S(c,function(m){var g=m.getLayout().x;gl.getLayout().x&&(l=m),m.depth>h.depth&&(h=m)});var d=u===l?1:i(u,l)/2,f=d-u.getLayout().x,v=0,p=0,y=0,T=0;if(r==="radial")v=n/(l.getLayout().x+d+f),p=o/(h.depth-1||1),S(c,function(m){y=(m.getLayout().x+f)*v,T=(m.depth-1)*p;var g=I(y,T);m.setLayout({x:g.x,y:g.y,rawX:y,rawY:T},!0)});else{var x=a.getOrient();x==="RL"||x==="LR"?(p=o/(l.getLayout().x+d+f),v=n/(h.depth-1||1),S(c,function(m){T=(m.getLayout().x+f)*p,y=x==="LR"?(m.depth-1)*v:n-(m.depth-1)*v,m.setLayout({x:y,y:T},!0)})):(x==="TB"||x==="BT")&&(v=n/(l.getLayout().x+d+f),p=o/(h.depth-1||1),S(c,function(m){y=(m.getLayout().x+f)*v,T=x==="TB"?(m.depth-1)*p:o-(m.depth-1)*p,m.setLayout({x:y,y:T},!0)}))}}}function Rt(a){a.eachSeriesByType("tree",function(t){var e=t.getData(),r=e.tree;r.eachNode(function(n){var o=n.getModel(),i=o.getModel("itemStyle").getItemStyle(),s=e.ensureUniqueItemVisual(n.dataIndex,"style");ae(s,i)})})}function zt(a){a.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},function(r){var n=t.dataIndex,o=r.getData().tree,i=o.getNodeByDataIndex(n);i.isExpand=!i.isExpand})}),a.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},function(t,e,r){e.eachComponent({mainType:"series",subType:"tree",query:t},function(n){var o=n.coordinateSystem,i=tt(o,t,void 0,r);n.setCenter&&n.setCenter(i.center),n.setZoom&&n.setZoom(i.zoom)})})}function Mt(a){a.registerChartView(xt),a.registerSeriesModel(Ft),a.registerLayout(bt),a.registerVisual(Rt),zt(a)}const Xt=(a,t)=>{const e=t.value(0),r=t.coord([t.value(1),e]),o=t.coord([t.value(2),e])[0]-r[0];return{type:"rect",transition:["shape"],shape:{x:r[0],y:r[1],width:o,height:20,r:2},style:{fill:["#5470C6","#91CC75","#EE6666","#FCCE10"][t.value(5)]},emphasis:{style:{stroke:"#000"}},textConfig:{position:"insideLeft"},textContent:{style:{text:t.value(3),fontFamily:"Verdana",fill:"#FFF",width:o-4,overflow:"truncate",ellipsis:"..",truncateMinChar:1},emphasis:{style:{stroke:"#000",lineWidth:.5}}}}};function Zt(a){return{tooltip:{formatter:t=>t.value[4]},dataZoom:[{type:"inside",id:"insideX",xAxisIndex:0,filterMode:"weakFilter",zoomOnMouseWheel:!1,moveOnMouseMove:!0},{id:"dataZoomX",type:"slider",xAxisIndex:0,filterMode:"filter"},{type:"slider",yAxisIndex:0,showDetail:!1},{type:"inside",id:"insideY",yAxisIndex:0,zoomOnMouseWheel:!1,moveOnMouseMove:!0,moveOnMouseWheel:!0}],xAxis:{type:"time",splitLine:{show:!1}},yAxis:{type:"category"},series:[{type:"custom",renderItem:Xt,encode:{x:[1,2],y:0},data:a.map(t=>({value:[t.id,new Date(t.startTime),new Date(t.endTime),`${t.owner} ${t.reason}`,t.description,t.type]}))}]}}function Gt(a){const t=new Map,e=[];return a.forEach(r=>{t.set(r.id,{...r,name:r.owner,value:r.id,children:[]})}),a.forEach(r=>{const n=t.get(r.id);if(r.parentId!==void 0){const o=t.get(r.parentId);o&&o.children.push(n)}else e.push(n)}),console.log(e),e}function Yt(a){return{series:[{type:"tree",data:Gt(a),top:"1%",left:"7%",bottom:"1%",right:"20%",symbolSize:7,label:{position:"left",verticalAlign:"middle",align:"right",fontSize:9},leaves:{label:{position:"right",verticalAlign:"middle",align:"left"}},emphasis:{focus:"descendant"},expandAndCollapse:!0,animationDuration:550,animationDurationUpdate:750}]}}const $t={style:{width:"100%",height:"850px"}},Ot={style:{width:"100%",height:"850px"}},Kt=Vue.defineComponent({setup(a){$e([Mt,Ke,Oe,He,We,je,Ue,qe,Je]);const t=ce().params.id,{t:e}=se.global,r=Vue.ref(),n=Vue.ref(),o=Vue.ref(),i=[{title:e("ID"),key:"id",width:80},{title:e("进程号"),key:"pid",width:100},{title:e("开始时间"),key:"startTime",width:200},{title:e("结束时间"),key:"endTime",width:200},{title:e("启动参数"),key:"args"}],s={width:200,title:e("操作"),key:"action",render(d){return Vue.h(ue,{style:"button",actions:[{label:e("查询任务"),type:"primary",onClick:()=>h(d)}]})}},c=[{title:e("ID"),key:"id",sorter:"default",width:80},{title:e("父级"),key:"parentId",sorter:"default",width:80},{title:e("类型"),key:"type",filter:"default",width:50},{title:e("所属"),key:"owner",filter:"default",width:200},{title:e("开始时间"),key:"startTime",sorter:"default",width:200},{title:e("结束时间"),sorter:"default",key:"endTime",width:200},{title:e("关闭原因"),key:"reason",filter:"default",width:200},{title:e("描述"),key:"description"}],u=Vue.ref();Vue.onMounted(async()=>{u.value=await le()});const l=Vue.ref();async function h(d){l.value=d,r.value=await de(t,{sessionId:d.id}),r.value.unshift({id:0,startTime:d.startTime,endTime:d.endTime,description:d.args,type:2,owner:"root",reason:"exit"}),n.value=Zt(r.value),o.value=Yt(r.value)}return(d,f)=>{const v=Vue.resolveComponent("n-tab-pane"),p=Vue.resolveComponent("n-tabs");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(p,{type:"line",animated:""},{default:Vue.withCtx(()=>[Vue.createVNode(v,{name:"sessionTable",tab:d.$t("会话历史记录")},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(H),{columns:i,dataSource:u.value,pagination:!1,"row-key":y=>y.id,"scroll-x":1090,actionColumn:s},null,8,["dataSource","row-key"])]),_:1},8,["tab"]),Vue.createVNode(v,{name:"taskTable",tab:d.$t("任务历史记录表")},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(H),{title:l.value.args,columns:c,dataSource:r.value,pagination:!1,"row-key":y=>y.sessionId+"-"+y.id,"scroll-x":1090},null,8,["title","dataSource","row-key"])]),_:1},8,["tab"]),Vue.createVNode(v,{name:"gantt",tab:d.$t("任务历史甘特图")},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",$t,[Vue.createVNode(Vue.unref(W),{class:"chart",option:n.value,autoresize:""},null,8,["option"])])]),_:1},8,["tab"]),Vue.createVNode(v,{name:"tree",tab:d.$t("任务历史树状图")},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",Ot,[Vue.createVNode(Vue.unref(W),{class:"chart",option:o.value,autoresize:""},null,8,["option"])])]),_:1},8,["tab"])]),_:1})])}}});export{Kt as default}; diff --git a/plugin/console/web/assets/index-44b6b587.js b/plugin/console/web/assets/index-0854f6f9.js similarity index 90% rename from plugin/console/web/assets/index-44b6b587.js rename to plugin/console/web/assets/index-0854f6f9.js index ca49f92..7b23304 100644 --- a/plugin/console/web/assets/index-44b6b587.js +++ b/plugin/console/web/assets/index-0854f6f9.js @@ -1 +1 @@ -import{l as V,m as k}from"./vendor-ec30964e.js";import{T as y,B as w}from"./TableAction-b6863a0a.js";import{_ as v}from"./index-f89cf332.js";import{i as u,_ as x}from"./index-93e74700.js";import{d as $}from"./index-c7d04dfb.js";const{t:n}=u.global;function a(t){return t=t<<3,t>1024*1024?(t/1024/1024).toFixed(2)+" mb/s":t>1024?(t/1024).toFixed(2)+" kb/s":t.toString()+" b/s"}const C=[{title:"StreamPath",key:"path",width:100},{title:n("类型"),key:"type",width:40},{title:n("订阅者"),key:"subscribers",width:50},{title:n("开始时间"),key:"startTime",width:50,render(t){return Vue.h(naive.NTime,{time:new Date(t.startTime),type:"relative"})}},{title:n("状态"),width:30,key:"state"},{title:n("音频"),key:"audio",width:100,render(t){const e=t.audioTrack;return Vue.h("text",e?`${e.codec},${e.fps}f/s,${e.sampleRate}Hz,${a(e.bps)}`:"无")}},{title:n("视频"),key:"video",width:100,render(t){const e=t.videoTrack;return Vue.h("text",e?`${e.codec},${e.fps}f/s,${e.width}x${e.height},${a(e.bps)}`:"无")}}];const b=Vue.defineComponent({setup(t){const{t:e}=u.global,c=V(),s=k(),{params:l}=c,d=l.id,r=Vue.ref([]),m=Vue.reactive({width:100,title:e("操作"),key:"action",fixed:"right",render(o){return Vue.h(y,{style:"button",actions:[{label:e("详情"),type:"primary",onClick:()=>s.push(`./detail/${d}/${o.path}`)}]})}});async function f(o){const i=await $();r.value=i.list}function p(o){console.log(o)}return(o,i)=>{const _=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(v),{onTick:f}),Vue.createVNode(_,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(w),{title:o.$t("流列表"),columns:Vue.unref(C),dataSource:r.value,pagination:!1,"row-key":h=>h.id,actionColumn:Vue.unref(m),"onUpdate:checkedRowKeys":p,"scroll-x":1090},null,8,["title","columns","dataSource","row-key","actionColumn"])]),_:1})])}}}),D=x(b,[["__scopeId","data-v-4b5c61c2"]]);export{D as default}; +import{l as V,m as k}from"./vendor-ec30964e.js";import{T as y,B as w}from"./TableAction-45c049b5.js";import{_ as v}from"./index-eabbb46f.js";import{i as u,_ as x}from"./index-c14b60e2.js";import{d as $}from"./index-cc631905.js";const{t:n}=u.global;function a(t){return t=t<<3,t>1024*1024?(t/1024/1024).toFixed(2)+" mb/s":t>1024?(t/1024).toFixed(2)+" kb/s":t.toString()+" b/s"}const C=[{title:"StreamPath",key:"path",width:100},{title:n("类型"),key:"type",width:40},{title:n("订阅者"),key:"subscribers",width:50},{title:n("开始时间"),key:"startTime",width:50,render(t){return Vue.h(naive.NTime,{time:new Date(t.startTime),type:"relative"})}},{title:n("状态"),width:30,key:"state"},{title:n("音频"),key:"audio",width:100,render(t){const e=t.audioTrack;return Vue.h("text",e?`${e.codec},${e.fps}f/s,${e.sampleRate}Hz,${a(e.bps)}`:"无")}},{title:n("视频"),key:"video",width:100,render(t){const e=t.videoTrack;return Vue.h("text",e?`${e.codec},${e.fps}f/s,${e.width}x${e.height},${a(e.bps)}`:"无")}}];const b=Vue.defineComponent({setup(t){const{t:e}=u.global,c=V(),s=k(),{params:l}=c,d=l.id,r=Vue.ref([]),m=Vue.reactive({width:100,title:e("操作"),key:"action",fixed:"right",render(o){return Vue.h(y,{style:"button",actions:[{label:e("详情"),type:"primary",onClick:()=>s.push(`./detail/${d}/${o.path}`)}]})}});async function f(o){const i=await $();r.value=i.list}function p(o){console.log(o)}return(o,i)=>{const _=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(v),{onTick:f}),Vue.createVNode(_,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(w),{title:o.$t("流列表"),columns:Vue.unref(C),dataSource:r.value,pagination:!1,"row-key":h=>h.id,actionColumn:Vue.unref(m),"onUpdate:checkedRowKeys":p,"scroll-x":1090},null,8,["title","columns","dataSource","row-key","actionColumn"])]),_:1})])}}}),D=x(b,[["__scopeId","data-v-4b5c61c2"]]);export{D as default}; diff --git a/plugin/console/web/assets/index-31a7c2a9.js b/plugin/console/web/assets/index-20e298cf.js similarity index 99% rename from plugin/console/web/assets/index-31a7c2a9.js rename to plugin/console/web/assets/index-20e298cf.js index b490bd1..7a02046 100644 --- a/plugin/console/web/assets/index-31a7c2a9.js +++ b/plugin/console/web/assets/index-20e298cf.js @@ -1,4 +1,4 @@ -import{W as ce,X as q,l as ue}from"./vendor-ec30964e.js";import{w as ve}from"./index-c7d04dfb.js";import{_ as de}from"./index-93e74700.js";var rr={},he={get exports(){return rr},set exports(_){rr=_}};function le(_){throw new Error('Could not dynamically require "'+_+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _0={},pe={get exports(){return _0},set exports(_){_0=_}};const _e={},be=Object.freeze(Object.defineProperty({__proto__:null,default:_e},Symbol.toStringTag,{value:"Module"})),ge=ce(be);var lr;function N(){return lr||(lr=1,function(_,W){(function(l,x){_.exports=x()})(q,function(){var l=l||function(x,B){var p;if(typeof window<"u"&&window.crypto&&(p=window.crypto),typeof self<"u"&&self.crypto&&(p=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(p=globalThis.crypto),!p&&typeof window<"u"&&window.msCrypto&&(p=window.msCrypto),!p&&typeof q<"u"&&q.crypto&&(p=q.crypto),!p&&typeof le=="function")try{p=ge}catch{}var A=function(){if(p){if(typeof p.getRandomValues=="function")try{return p.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof p.randomBytes=="function")try{return p.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},h=Object.create||function(){function a(){}return function(i){var f;return a.prototype=i,f=new a,a.prototype=null,f}}(),u={},e=u.lib={},n=e.Base=function(){return{extend:function(a){var i=h(this);return a&&i.mixIn(a),(!i.hasOwnProperty("init")||this.init===i.init)&&(i.init=function(){i.$super.init.apply(this,arguments)}),i.init.prototype=i,i.$super=this,i},create:function(){var a=this.extend();return a.init.apply(a,arguments),a},init:function(){},mixIn:function(a){for(var i in a)a.hasOwnProperty(i)&&(this[i]=a[i]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),d=e.WordArray=n.extend({init:function(a,i){a=this.words=a||[],i!=B?this.sigBytes=i:this.sigBytes=a.length*4},toString:function(a){return(a||t).stringify(this)},concat:function(a){var i=this.words,f=a.words,y=this.sigBytes,C=a.sigBytes;if(this.clamp(),y%4)for(var k=0;k>>2]>>>24-k%4*8&255;i[y+k>>>2]|=m<<24-(y+k)%4*8}else for(var D=0;D>>2]=f[D>>>2];return this.sigBytes+=C,this},clamp:function(){var a=this.words,i=this.sigBytes;a[i>>>2]&=4294967295<<32-i%4*8,a.length=x.ceil(i/4)},clone:function(){var a=n.clone.call(this);return a.words=this.words.slice(0),a},random:function(a){for(var i=[],f=0;f>>2]>>>24-C%4*8&255;y.push((k>>>4).toString(16)),y.push((k&15).toString(16))}return y.join("")},parse:function(a){for(var i=a.length,f=[],y=0;y>>3]|=parseInt(a.substr(y,2),16)<<24-y%8*4;return new d.init(f,i/2)}},o=r.Latin1={stringify:function(a){for(var i=a.words,f=a.sigBytes,y=[],C=0;C>>2]>>>24-C%4*8&255;y.push(String.fromCharCode(k))}return y.join("")},parse:function(a){for(var i=a.length,f=[],y=0;y>>2]|=(a.charCodeAt(y)&255)<<24-y%4*8;return new d.init(f,i)}},s=r.Utf8={stringify:function(a){try{return decodeURIComponent(escape(o.stringify(a)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(a){return o.parse(unescape(encodeURIComponent(a)))}},c=e.BufferedBlockAlgorithm=n.extend({reset:function(){this._data=new d.init,this._nDataBytes=0},_append:function(a){typeof a=="string"&&(a=s.parse(a)),this._data.concat(a),this._nDataBytes+=a.sigBytes},_process:function(a){var i,f=this._data,y=f.words,C=f.sigBytes,k=this.blockSize,m=k*4,D=C/m;a?D=x.ceil(D):D=x.max((D|0)-this._minBufferSize,0);var v=D*k,g=x.min(v*4,C);if(v){for(var H=0;H>>2]|=u[d]<<24-d%4*8;A.call(this,n,e)}else A.apply(this,arguments)};h.prototype=p}}(),l.lib.WordArray})}(Be)),g0}var y0={},me={get exports(){return y0},set exports(_){y0=_}},br;function ke(){return br||(br=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.enc;A.Utf16=A.Utf16BE={stringify:function(u){for(var e=u.words,n=u.sigBytes,d=[],r=0;r>>2]>>>16-r%4*8&65535;d.push(String.fromCharCode(t))}return d.join("")},parse:function(u){for(var e=u.length,n=[],d=0;d>>1]|=u.charCodeAt(d)<<16-d%2*16;return p.create(n,e*2)}},A.Utf16LE={stringify:function(u){for(var e=u.words,n=u.sigBytes,d=[],r=0;r>>2]>>>16-r%4*8&65535);d.push(String.fromCharCode(t))}return d.join("")},parse:function(u){for(var e=u.length,n=[],d=0;d>>1]|=h(u.charCodeAt(d)<<16-d%2*16);return p.create(n,e*2)}};function h(u){return u<<8&4278255360|u>>>8&16711935}}(),l.enc.Utf16})}(me)),y0}var B0={},we={get exports(){return B0},set exports(_){B0=_}},gr;function x0(){return gr||(gr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.enc;A.Base64={stringify:function(u){var e=u.words,n=u.sigBytes,d=this._map;u.clamp();for(var r=[],t=0;t>>2]>>>24-t%4*8&255,s=e[t+1>>>2]>>>24-(t+1)%4*8&255,c=e[t+2>>>2]>>>24-(t+2)%4*8&255,b=o<<16|s<<8|c,a=0;a<4&&t+a*.75>>6*(3-a)&63));var i=d.charAt(64);if(i)for(;r.length%4;)r.push(i);return r.join("")},parse:function(u){var e=u.length,n=this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var r=0;r>>6-t%4*2,c=o|s;d[r>>>2]|=c<<24-r%4*8,r++}return p.create(d,r)}}(),l.enc.Base64})}(we)),B0}var C0={},He={get exports(){return C0},set exports(_){C0=_}},yr;function Ee(){return yr||(yr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.enc;A.Base64url={stringify:function(u,e=!0){var n=u.words,d=u.sigBytes,r=e?this._safe_map:this._map;u.clamp();for(var t=[],o=0;o>>2]>>>24-o%4*8&255,c=n[o+1>>>2]>>>24-(o+1)%4*8&255,b=n[o+2>>>2]>>>24-(o+2)%4*8&255,a=s<<16|c<<8|b,i=0;i<4&&o+i*.75>>6*(3-i)&63));var f=r.charAt(64);if(f)for(;t.length%4;)t.push(f);return t.join("")},parse:function(u,e=!0){var n=u.length,d=e?this._safe_map:this._map,r=this._reverseMap;if(!r){r=this._reverseMap=[];for(var t=0;t>>6-t%4*2,c=o|s;d[r>>>2]|=c<<24-r%4*8,r++}return p.create(d,r)}}(),l.enc.Base64url})}(He)),C0}var m0={},Se={get exports(){return m0},set exports(_){m0=_}},Br;function o0(){return Br||(Br=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(x){var B=l,p=B.lib,A=p.WordArray,h=p.Hasher,u=B.algo,e=[];(function(){for(var s=0;s<64;s++)e[s]=x.abs(x.sin(s+1))*4294967296|0})();var n=u.MD5=h.extend({_doReset:function(){this._hash=new A.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(s,c){for(var b=0;b<16;b++){var a=c+b,i=s[a];s[a]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var f=this._hash.words,y=s[c+0],C=s[c+1],k=s[c+2],m=s[c+3],D=s[c+4],v=s[c+5],g=s[c+6],H=s[c+7],S=s[c+8],z=s[c+9],P=s[c+10],$=s[c+11],K=s[c+12],T=s[c+13],I=s[c+14],L=s[c+15],w=f[0],R=f[1],V=f[2],E=f[3];w=d(w,R,V,E,y,7,e[0]),E=d(E,w,R,V,C,12,e[1]),V=d(V,E,w,R,k,17,e[2]),R=d(R,V,E,w,m,22,e[3]),w=d(w,R,V,E,D,7,e[4]),E=d(E,w,R,V,v,12,e[5]),V=d(V,E,w,R,g,17,e[6]),R=d(R,V,E,w,H,22,e[7]),w=d(w,R,V,E,S,7,e[8]),E=d(E,w,R,V,z,12,e[9]),V=d(V,E,w,R,P,17,e[10]),R=d(R,V,E,w,$,22,e[11]),w=d(w,R,V,E,K,7,e[12]),E=d(E,w,R,V,T,12,e[13]),V=d(V,E,w,R,I,17,e[14]),R=d(R,V,E,w,L,22,e[15]),w=r(w,R,V,E,C,5,e[16]),E=r(E,w,R,V,g,9,e[17]),V=r(V,E,w,R,$,14,e[18]),R=r(R,V,E,w,y,20,e[19]),w=r(w,R,V,E,v,5,e[20]),E=r(E,w,R,V,P,9,e[21]),V=r(V,E,w,R,L,14,e[22]),R=r(R,V,E,w,D,20,e[23]),w=r(w,R,V,E,z,5,e[24]),E=r(E,w,R,V,I,9,e[25]),V=r(V,E,w,R,m,14,e[26]),R=r(R,V,E,w,S,20,e[27]),w=r(w,R,V,E,T,5,e[28]),E=r(E,w,R,V,k,9,e[29]),V=r(V,E,w,R,H,14,e[30]),R=r(R,V,E,w,K,20,e[31]),w=t(w,R,V,E,v,4,e[32]),E=t(E,w,R,V,S,11,e[33]),V=t(V,E,w,R,$,16,e[34]),R=t(R,V,E,w,I,23,e[35]),w=t(w,R,V,E,C,4,e[36]),E=t(E,w,R,V,D,11,e[37]),V=t(V,E,w,R,H,16,e[38]),R=t(R,V,E,w,P,23,e[39]),w=t(w,R,V,E,T,4,e[40]),E=t(E,w,R,V,y,11,e[41]),V=t(V,E,w,R,m,16,e[42]),R=t(R,V,E,w,g,23,e[43]),w=t(w,R,V,E,z,4,e[44]),E=t(E,w,R,V,K,11,e[45]),V=t(V,E,w,R,L,16,e[46]),R=t(R,V,E,w,k,23,e[47]),w=o(w,R,V,E,y,6,e[48]),E=o(E,w,R,V,H,10,e[49]),V=o(V,E,w,R,I,15,e[50]),R=o(R,V,E,w,v,21,e[51]),w=o(w,R,V,E,K,6,e[52]),E=o(E,w,R,V,m,10,e[53]),V=o(V,E,w,R,P,15,e[54]),R=o(R,V,E,w,C,21,e[55]),w=o(w,R,V,E,S,6,e[56]),E=o(E,w,R,V,L,10,e[57]),V=o(V,E,w,R,g,15,e[58]),R=o(R,V,E,w,T,21,e[59]),w=o(w,R,V,E,D,6,e[60]),E=o(E,w,R,V,$,10,e[61]),V=o(V,E,w,R,k,15,e[62]),R=o(R,V,E,w,z,21,e[63]),f[0]=f[0]+w|0,f[1]=f[1]+R|0,f[2]=f[2]+V|0,f[3]=f[3]+E|0},_doFinalize:function(){var s=this._data,c=s.words,b=this._nDataBytes*8,a=s.sigBytes*8;c[a>>>5]|=128<<24-a%32;var i=x.floor(b/4294967296),f=b;c[(a+64>>>9<<4)+15]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360,c[(a+64>>>9<<4)+14]=(f<<8|f>>>24)&16711935|(f<<24|f>>>8)&4278255360,s.sigBytes=(c.length+1)*4,this._process();for(var y=this._hash,C=y.words,k=0;k<4;k++){var m=C[k];C[k]=(m<<8|m>>>24)&16711935|(m<<24|m>>>8)&4278255360}return y},clone:function(){var s=h.clone.call(this);return s._hash=this._hash.clone(),s}});function d(s,c,b,a,i,f,y){var C=s+(c&b|~c&a)+i+y;return(C<>>32-f)+c}function r(s,c,b,a,i,f,y){var C=s+(c&a|b&~a)+i+y;return(C<>>32-f)+c}function t(s,c,b,a,i,f,y){var C=s+(c^b^a)+i+y;return(C<>>32-f)+c}function o(s,c,b,a,i,f,y){var C=s+(b^(c|~a))+i+y;return(C<>>32-f)+c}B.MD5=h._createHelper(n),B.HmacMD5=h._createHmacHelper(n)}(Math),l.MD5})}(Se)),m0}var k0={},Ae={get exports(){return k0},set exports(_){k0=_}},Cr;function er(){return Cr||(Cr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=B.Hasher,h=x.algo,u=[],e=h.SHA1=A.extend({_doReset:function(){this._hash=new p.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(n,d){for(var r=this._hash.words,t=r[0],o=r[1],s=r[2],c=r[3],b=r[4],a=0;a<80;a++){if(a<16)u[a]=n[d+a]|0;else{var i=u[a-3]^u[a-8]^u[a-14]^u[a-16];u[a]=i<<1|i>>>31}var f=(t<<5|t>>>27)+b+u[a];a<20?f+=(o&s|~o&c)+1518500249:a<40?f+=(o^s^c)+1859775393:a<60?f+=(o&s|o&c|s&c)-1894007588:f+=(o^s^c)-899497514,b=c,c=s,s=o<<30|o>>>2,o=t,t=f}r[0]=r[0]+t|0,r[1]=r[1]+o|0,r[2]=r[2]+s|0,r[3]=r[3]+c|0,r[4]=r[4]+b|0},_doFinalize:function(){var n=this._data,d=n.words,r=this._nDataBytes*8,t=n.sigBytes*8;return d[t>>>5]|=128<<24-t%32,d[(t+64>>>9<<4)+14]=Math.floor(r/4294967296),d[(t+64>>>9<<4)+15]=r,n.sigBytes=d.length*4,this._process(),this._hash},clone:function(){var n=A.clone.call(this);return n._hash=this._hash.clone(),n}});x.SHA1=A._createHelper(e),x.HmacSHA1=A._createHmacHelper(e)}(),l.SHA1})}(Ae)),k0}var w0={},Re={get exports(){return w0},set exports(_){w0=_}},mr;function Mr(){return mr||(mr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(x){var B=l,p=B.lib,A=p.WordArray,h=p.Hasher,u=B.algo,e=[],n=[];(function(){function t(b){for(var a=x.sqrt(b),i=2;i<=a;i++)if(!(b%i))return!1;return!0}function o(b){return(b-(b|0))*4294967296|0}for(var s=2,c=0;c<64;)t(s)&&(c<8&&(e[c]=o(x.pow(s,1/2))),n[c]=o(x.pow(s,1/3)),c++),s++})();var d=[],r=u.SHA256=h.extend({_doReset:function(){this._hash=new A.init(e.slice(0))},_doProcessBlock:function(t,o){for(var s=this._hash.words,c=s[0],b=s[1],a=s[2],i=s[3],f=s[4],y=s[5],C=s[6],k=s[7],m=0;m<64;m++){if(m<16)d[m]=t[o+m]|0;else{var D=d[m-15],v=(D<<25|D>>>7)^(D<<14|D>>>18)^D>>>3,g=d[m-2],H=(g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10;d[m]=v+d[m-7]+H+d[m-16]}var S=f&y^~f&C,z=c&b^c&a^b&a,P=(c<<30|c>>>2)^(c<<19|c>>>13)^(c<<10|c>>>22),$=(f<<26|f>>>6)^(f<<21|f>>>11)^(f<<7|f>>>25),K=k+$+S+n[m]+d[m],T=P+z;k=C,C=y,y=f,f=i+K|0,i=a,a=b,b=c,c=K+T|0}s[0]=s[0]+c|0,s[1]=s[1]+b|0,s[2]=s[2]+a|0,s[3]=s[3]+i|0,s[4]=s[4]+f|0,s[5]=s[5]+y|0,s[6]=s[6]+C|0,s[7]=s[7]+k|0},_doFinalize:function(){var t=this._data,o=t.words,s=this._nDataBytes*8,c=t.sigBytes*8;return o[c>>>5]|=128<<24-c%32,o[(c+64>>>9<<4)+14]=x.floor(s/4294967296),o[(c+64>>>9<<4)+15]=s,t.sigBytes=o.length*4,this._process(),this._hash},clone:function(){var t=h.clone.call(this);return t._hash=this._hash.clone(),t}});B.SHA256=h._createHelper(r),B.HmacSHA256=h._createHmacHelper(r)}(Math),l.SHA256})}(Re)),w0}var H0={},Ve={get exports(){return H0},set exports(_){H0=_}},kr;function De(){return kr||(kr=1,function(_,W){(function(l,x,B){_.exports=x(N(),Mr())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.algo,h=A.SHA256,u=A.SHA224=h.extend({_doReset:function(){this._hash=new p.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var e=h._doFinalize.call(this);return e.sigBytes-=4,e}});x.SHA224=h._createHelper(u),x.HmacSHA224=h._createHmacHelper(u)}(),l.SHA224})}(Ve)),H0}var E0={},ze={get exports(){return E0},set exports(_){E0=_}},wr;function Qr(){return wr||(wr=1,function(_,W){(function(l,x,B){_.exports=x(N(),Y0())})(q,function(l){return function(){var x=l,B=x.lib,p=B.Hasher,A=x.x64,h=A.Word,u=A.WordArray,e=x.algo;function n(){return h.create.apply(h,arguments)}var d=[n(1116352408,3609767458),n(1899447441,602891725),n(3049323471,3964484399),n(3921009573,2173295548),n(961987163,4081628472),n(1508970993,3053834265),n(2453635748,2937671579),n(2870763221,3664609560),n(3624381080,2734883394),n(310598401,1164996542),n(607225278,1323610764),n(1426881987,3590304994),n(1925078388,4068182383),n(2162078206,991336113),n(2614888103,633803317),n(3248222580,3479774868),n(3835390401,2666613458),n(4022224774,944711139),n(264347078,2341262773),n(604807628,2007800933),n(770255983,1495990901),n(1249150122,1856431235),n(1555081692,3175218132),n(1996064986,2198950837),n(2554220882,3999719339),n(2821834349,766784016),n(2952996808,2566594879),n(3210313671,3203337956),n(3336571891,1034457026),n(3584528711,2466948901),n(113926993,3758326383),n(338241895,168717936),n(666307205,1188179964),n(773529912,1546045734),n(1294757372,1522805485),n(1396182291,2643833823),n(1695183700,2343527390),n(1986661051,1014477480),n(2177026350,1206759142),n(2456956037,344077627),n(2730485921,1290863460),n(2820302411,3158454273),n(3259730800,3505952657),n(3345764771,106217008),n(3516065817,3606008344),n(3600352804,1432725776),n(4094571909,1467031594),n(275423344,851169720),n(430227734,3100823752),n(506948616,1363258195),n(659060556,3750685593),n(883997877,3785050280),n(958139571,3318307427),n(1322822218,3812723403),n(1537002063,2003034995),n(1747873779,3602036899),n(1955562222,1575990012),n(2024104815,1125592928),n(2227730452,2716904306),n(2361852424,442776044),n(2428436474,593698344),n(2756734187,3733110249),n(3204031479,2999351573),n(3329325298,3815920427),n(3391569614,3928383900),n(3515267271,566280711),n(3940187606,3454069534),n(4118630271,4000239992),n(116418474,1914138554),n(174292421,2731055270),n(289380356,3203993006),n(460393269,320620315),n(685471733,587496836),n(852142971,1086792851),n(1017036298,365543100),n(1126000580,2618297676),n(1288033470,3409855158),n(1501505948,4234509866),n(1607167915,987167468),n(1816402316,1246189591)],r=[];(function(){for(var o=0;o<80;o++)r[o]=n()})();var t=e.SHA512=p.extend({_doReset:function(){this._hash=new u.init([new h.init(1779033703,4089235720),new h.init(3144134277,2227873595),new h.init(1013904242,4271175723),new h.init(2773480762,1595750129),new h.init(1359893119,2917565137),new h.init(2600822924,725511199),new h.init(528734635,4215389547),new h.init(1541459225,327033209)])},_doProcessBlock:function(o,s){for(var c=this._hash.words,b=c[0],a=c[1],i=c[2],f=c[3],y=c[4],C=c[5],k=c[6],m=c[7],D=b.high,v=b.low,g=a.high,H=a.low,S=i.high,z=i.low,P=f.high,$=f.low,K=y.high,T=y.low,I=C.high,L=C.low,w=k.high,R=k.low,V=m.high,E=m.low,O=D,U=v,G=g,F=H,i0=S,t0=z,j0=P,s0=$,Y=K,Z=T,h0=I,f0=L,l0=w,c0=R,J0=V,u0=E,j=0;j<80;j++){var Q,J,p0=r[j];if(j<16)J=p0.high=o[s+j*2]|0,Q=p0.low=o[s+j*2+1]|0;else{var ar=r[j-15],a0=ar.high,v0=ar.low,Yr=(a0>>>1|v0<<31)^(a0>>>8|v0<<24)^a0>>>7,nr=(v0>>>1|a0<<31)^(v0>>>8|a0<<24)^(v0>>>7|a0<<25),xr=r[j-2],n0=xr.high,d0=xr.low,jr=(n0>>>19|d0<<13)^(n0<<3|d0>>>29)^n0>>>6,or=(d0>>>19|n0<<13)^(d0<<3|n0>>>29)^(d0>>>6|n0<<26),ir=r[j-7],Jr=ir.high,re=ir.low,sr=r[j-16],ee=sr.high,fr=sr.low;Q=nr+re,J=Yr+Jr+(Q>>>0>>0?1:0),Q=Q+or,J=J+jr+(Q>>>0>>0?1:0),Q=Q+fr,J=J+ee+(Q>>>0>>0?1:0),p0.high=J,p0.low=Q}var te=Y&h0^~Y&l0,cr=Z&f0^~Z&c0,ae=O&G^O&i0^G&i0,ne=U&F^U&t0^F&t0,xe=(O>>>28|U<<4)^(O<<30|U>>>2)^(O<<25|U>>>7),ur=(U>>>28|O<<4)^(U<<30|O>>>2)^(U<<25|O>>>7),oe=(Y>>>14|Z<<18)^(Y>>>18|Z<<14)^(Y<<23|Z>>>9),ie=(Z>>>14|Y<<18)^(Z>>>18|Y<<14)^(Z<<23|Y>>>9),vr=d[j],se=vr.high,dr=vr.low,M=u0+ie,r0=J0+oe+(M>>>0>>0?1:0),M=M+cr,r0=r0+te+(M>>>0>>0?1:0),M=M+dr,r0=r0+se+(M>>>0>>0?1:0),M=M+Q,r0=r0+J+(M>>>0>>0?1:0),hr=ur+ne,fe=xe+ae+(hr>>>0>>0?1:0);J0=l0,u0=c0,l0=h0,c0=f0,h0=Y,f0=Z,Z=s0+M|0,Y=j0+r0+(Z>>>0>>0?1:0)|0,j0=i0,s0=t0,i0=G,t0=F,G=O,F=U,U=M+hr|0,O=r0+fe+(U>>>0>>0?1:0)|0}v=b.low=v+U,b.high=D+O+(v>>>0>>0?1:0),H=a.low=H+F,a.high=g+G+(H>>>0>>0?1:0),z=i.low=z+t0,i.high=S+i0+(z>>>0>>0?1:0),$=f.low=$+s0,f.high=P+j0+($>>>0>>0?1:0),T=y.low=T+Z,y.high=K+Y+(T>>>0>>0?1:0),L=C.low=L+f0,C.high=I+h0+(L>>>0>>0?1:0),R=k.low=R+c0,k.high=w+l0+(R>>>0>>0?1:0),E=m.low=E+u0,m.high=V+J0+(E>>>0>>0?1:0)},_doFinalize:function(){var o=this._data,s=o.words,c=this._nDataBytes*8,b=o.sigBytes*8;s[b>>>5]|=128<<24-b%32,s[(b+128>>>10<<5)+30]=Math.floor(c/4294967296),s[(b+128>>>10<<5)+31]=c,o.sigBytes=s.length*4,this._process();var a=this._hash.toX32();return a},clone:function(){var o=p.clone.call(this);return o._hash=this._hash.clone(),o},blockSize:1024/32});x.SHA512=p._createHelper(t),x.HmacSHA512=p._createHmacHelper(t)}(),l.SHA512})}(ze)),E0}var S0={},Pe={get exports(){return S0},set exports(_){S0=_}},Hr;function Fe(){return Hr||(Hr=1,function(_,W){(function(l,x,B){_.exports=x(N(),Y0(),Qr())})(q,function(l){return function(){var x=l,B=x.x64,p=B.Word,A=B.WordArray,h=x.algo,u=h.SHA512,e=h.SHA384=u.extend({_doReset:function(){this._hash=new A.init([new p.init(3418070365,3238371032),new p.init(1654270250,914150663),new p.init(2438529370,812702999),new p.init(355462360,4144912697),new p.init(1731405415,4290775857),new p.init(2394180231,1750603025),new p.init(3675008525,1694076839),new p.init(1203062813,3204075428)])},_doFinalize:function(){var n=u._doFinalize.call(this);return n.sigBytes-=16,n}});x.SHA384=u._createHelper(e),x.HmacSHA384=u._createHmacHelper(e)}(),l.SHA384})}(Pe)),S0}var A0={},qe={get exports(){return A0},set exports(_){A0=_}},Er;function We(){return Er||(Er=1,function(_,W){(function(l,x,B){_.exports=x(N(),Y0())})(q,function(l){return function(x){var B=l,p=B.lib,A=p.WordArray,h=p.Hasher,u=B.x64,e=u.Word,n=B.algo,d=[],r=[],t=[];(function(){for(var c=1,b=0,a=0;a<24;a++){d[c+5*b]=(a+1)*(a+2)/2%64;var i=b%5,f=(2*c+3*b)%5;c=i,b=f}for(var c=0;c<5;c++)for(var b=0;b<5;b++)r[c+5*b]=b+(2*c+3*b)%5*5;for(var y=1,C=0;C<24;C++){for(var k=0,m=0,D=0;D<7;D++){if(y&1){var v=(1<>>24)&16711935|(y<<24|y>>>8)&4278255360,C=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360;var k=a[f];k.high^=C,k.low^=y}for(var m=0;m<24;m++){for(var D=0;D<5;D++){for(var v=0,g=0,H=0;H<5;H++){var k=a[D+5*H];v^=k.high,g^=k.low}var S=o[D];S.high=v,S.low=g}for(var D=0;D<5;D++)for(var z=o[(D+4)%5],P=o[(D+1)%5],$=P.high,K=P.low,v=z.high^($<<1|K>>>31),g=z.low^(K<<1|$>>>31),H=0;H<5;H++){var k=a[D+5*H];k.high^=v,k.low^=g}for(var T=1;T<25;T++){var v,g,k=a[T],I=k.high,L=k.low,w=d[T];w<32?(v=I<>>32-w,g=L<>>32-w):(v=L<>>64-w,g=I<>>64-w);var R=o[r[T]];R.high=v,R.low=g}var V=o[0],E=a[0];V.high=E.high,V.low=E.low;for(var D=0;D<5;D++)for(var H=0;H<5;H++){var T=D+5*H,k=a[T],O=o[T],U=o[(D+1)%5+5*H],G=o[(D+2)%5+5*H];k.high=O.high^~U.high&G.high,k.low=O.low^~U.low&G.low}var k=a[0],F=t[m];k.high^=F.high,k.low^=F.low}},_doFinalize:function(){var c=this._data,b=c.words;this._nDataBytes*8;var a=c.sigBytes*8,i=this.blockSize*32;b[a>>>5]|=1<<24-a%32,b[(x.ceil((a+1)/i)*i>>>5)-1]|=128,c.sigBytes=b.length*4,this._process();for(var f=this._state,y=this.cfg.outputLength/8,C=y/8,k=[],m=0;m>>24)&16711935|(v<<24|v>>>8)&4278255360,g=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,k.push(g),k.push(v)}return new A.init(k,y)},clone:function(){for(var c=h.clone.call(this),b=c._state=this._state.slice(0),a=0;a<25;a++)b[a]=b[a].clone();return c}});B.SHA3=h._createHelper(s),B.HmacSHA3=h._createHmacHelper(s)}(Math),l.SHA3})}(qe)),A0}var R0={},$e={get exports(){return R0},set exports(_){R0=_}},Sr;function Ne(){return Sr||(Sr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){/** @preserve +import{W as ce,X as q,l as ue}from"./vendor-ec30964e.js";import{w as ve}from"./index-cc631905.js";import{_ as de}from"./index-c14b60e2.js";var rr={},he={get exports(){return rr},set exports(_){rr=_}};function le(_){throw new Error('Could not dynamically require "'+_+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _0={},pe={get exports(){return _0},set exports(_){_0=_}};const _e={},be=Object.freeze(Object.defineProperty({__proto__:null,default:_e},Symbol.toStringTag,{value:"Module"})),ge=ce(be);var lr;function N(){return lr||(lr=1,function(_,W){(function(l,x){_.exports=x()})(q,function(){var l=l||function(x,B){var p;if(typeof window<"u"&&window.crypto&&(p=window.crypto),typeof self<"u"&&self.crypto&&(p=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(p=globalThis.crypto),!p&&typeof window<"u"&&window.msCrypto&&(p=window.msCrypto),!p&&typeof q<"u"&&q.crypto&&(p=q.crypto),!p&&typeof le=="function")try{p=ge}catch{}var A=function(){if(p){if(typeof p.getRandomValues=="function")try{return p.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof p.randomBytes=="function")try{return p.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},h=Object.create||function(){function a(){}return function(i){var f;return a.prototype=i,f=new a,a.prototype=null,f}}(),u={},e=u.lib={},n=e.Base=function(){return{extend:function(a){var i=h(this);return a&&i.mixIn(a),(!i.hasOwnProperty("init")||this.init===i.init)&&(i.init=function(){i.$super.init.apply(this,arguments)}),i.init.prototype=i,i.$super=this,i},create:function(){var a=this.extend();return a.init.apply(a,arguments),a},init:function(){},mixIn:function(a){for(var i in a)a.hasOwnProperty(i)&&(this[i]=a[i]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),d=e.WordArray=n.extend({init:function(a,i){a=this.words=a||[],i!=B?this.sigBytes=i:this.sigBytes=a.length*4},toString:function(a){return(a||t).stringify(this)},concat:function(a){var i=this.words,f=a.words,y=this.sigBytes,C=a.sigBytes;if(this.clamp(),y%4)for(var k=0;k>>2]>>>24-k%4*8&255;i[y+k>>>2]|=m<<24-(y+k)%4*8}else for(var D=0;D>>2]=f[D>>>2];return this.sigBytes+=C,this},clamp:function(){var a=this.words,i=this.sigBytes;a[i>>>2]&=4294967295<<32-i%4*8,a.length=x.ceil(i/4)},clone:function(){var a=n.clone.call(this);return a.words=this.words.slice(0),a},random:function(a){for(var i=[],f=0;f>>2]>>>24-C%4*8&255;y.push((k>>>4).toString(16)),y.push((k&15).toString(16))}return y.join("")},parse:function(a){for(var i=a.length,f=[],y=0;y>>3]|=parseInt(a.substr(y,2),16)<<24-y%8*4;return new d.init(f,i/2)}},o=r.Latin1={stringify:function(a){for(var i=a.words,f=a.sigBytes,y=[],C=0;C>>2]>>>24-C%4*8&255;y.push(String.fromCharCode(k))}return y.join("")},parse:function(a){for(var i=a.length,f=[],y=0;y>>2]|=(a.charCodeAt(y)&255)<<24-y%4*8;return new d.init(f,i)}},s=r.Utf8={stringify:function(a){try{return decodeURIComponent(escape(o.stringify(a)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(a){return o.parse(unescape(encodeURIComponent(a)))}},c=e.BufferedBlockAlgorithm=n.extend({reset:function(){this._data=new d.init,this._nDataBytes=0},_append:function(a){typeof a=="string"&&(a=s.parse(a)),this._data.concat(a),this._nDataBytes+=a.sigBytes},_process:function(a){var i,f=this._data,y=f.words,C=f.sigBytes,k=this.blockSize,m=k*4,D=C/m;a?D=x.ceil(D):D=x.max((D|0)-this._minBufferSize,0);var v=D*k,g=x.min(v*4,C);if(v){for(var H=0;H>>2]|=u[d]<<24-d%4*8;A.call(this,n,e)}else A.apply(this,arguments)};h.prototype=p}}(),l.lib.WordArray})}(Be)),g0}var y0={},me={get exports(){return y0},set exports(_){y0=_}},br;function ke(){return br||(br=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.enc;A.Utf16=A.Utf16BE={stringify:function(u){for(var e=u.words,n=u.sigBytes,d=[],r=0;r>>2]>>>16-r%4*8&65535;d.push(String.fromCharCode(t))}return d.join("")},parse:function(u){for(var e=u.length,n=[],d=0;d>>1]|=u.charCodeAt(d)<<16-d%2*16;return p.create(n,e*2)}},A.Utf16LE={stringify:function(u){for(var e=u.words,n=u.sigBytes,d=[],r=0;r>>2]>>>16-r%4*8&65535);d.push(String.fromCharCode(t))}return d.join("")},parse:function(u){for(var e=u.length,n=[],d=0;d>>1]|=h(u.charCodeAt(d)<<16-d%2*16);return p.create(n,e*2)}};function h(u){return u<<8&4278255360|u>>>8&16711935}}(),l.enc.Utf16})}(me)),y0}var B0={},we={get exports(){return B0},set exports(_){B0=_}},gr;function x0(){return gr||(gr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.enc;A.Base64={stringify:function(u){var e=u.words,n=u.sigBytes,d=this._map;u.clamp();for(var r=[],t=0;t>>2]>>>24-t%4*8&255,s=e[t+1>>>2]>>>24-(t+1)%4*8&255,c=e[t+2>>>2]>>>24-(t+2)%4*8&255,b=o<<16|s<<8|c,a=0;a<4&&t+a*.75>>6*(3-a)&63));var i=d.charAt(64);if(i)for(;r.length%4;)r.push(i);return r.join("")},parse:function(u){var e=u.length,n=this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var r=0;r>>6-t%4*2,c=o|s;d[r>>>2]|=c<<24-r%4*8,r++}return p.create(d,r)}}(),l.enc.Base64})}(we)),B0}var C0={},He={get exports(){return C0},set exports(_){C0=_}},yr;function Ee(){return yr||(yr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.enc;A.Base64url={stringify:function(u,e=!0){var n=u.words,d=u.sigBytes,r=e?this._safe_map:this._map;u.clamp();for(var t=[],o=0;o>>2]>>>24-o%4*8&255,c=n[o+1>>>2]>>>24-(o+1)%4*8&255,b=n[o+2>>>2]>>>24-(o+2)%4*8&255,a=s<<16|c<<8|b,i=0;i<4&&o+i*.75>>6*(3-i)&63));var f=r.charAt(64);if(f)for(;t.length%4;)t.push(f);return t.join("")},parse:function(u,e=!0){var n=u.length,d=e?this._safe_map:this._map,r=this._reverseMap;if(!r){r=this._reverseMap=[];for(var t=0;t>>6-t%4*2,c=o|s;d[r>>>2]|=c<<24-r%4*8,r++}return p.create(d,r)}}(),l.enc.Base64url})}(He)),C0}var m0={},Se={get exports(){return m0},set exports(_){m0=_}},Br;function o0(){return Br||(Br=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(x){var B=l,p=B.lib,A=p.WordArray,h=p.Hasher,u=B.algo,e=[];(function(){for(var s=0;s<64;s++)e[s]=x.abs(x.sin(s+1))*4294967296|0})();var n=u.MD5=h.extend({_doReset:function(){this._hash=new A.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(s,c){for(var b=0;b<16;b++){var a=c+b,i=s[a];s[a]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var f=this._hash.words,y=s[c+0],C=s[c+1],k=s[c+2],m=s[c+3],D=s[c+4],v=s[c+5],g=s[c+6],H=s[c+7],S=s[c+8],z=s[c+9],P=s[c+10],$=s[c+11],K=s[c+12],T=s[c+13],I=s[c+14],L=s[c+15],w=f[0],R=f[1],V=f[2],E=f[3];w=d(w,R,V,E,y,7,e[0]),E=d(E,w,R,V,C,12,e[1]),V=d(V,E,w,R,k,17,e[2]),R=d(R,V,E,w,m,22,e[3]),w=d(w,R,V,E,D,7,e[4]),E=d(E,w,R,V,v,12,e[5]),V=d(V,E,w,R,g,17,e[6]),R=d(R,V,E,w,H,22,e[7]),w=d(w,R,V,E,S,7,e[8]),E=d(E,w,R,V,z,12,e[9]),V=d(V,E,w,R,P,17,e[10]),R=d(R,V,E,w,$,22,e[11]),w=d(w,R,V,E,K,7,e[12]),E=d(E,w,R,V,T,12,e[13]),V=d(V,E,w,R,I,17,e[14]),R=d(R,V,E,w,L,22,e[15]),w=r(w,R,V,E,C,5,e[16]),E=r(E,w,R,V,g,9,e[17]),V=r(V,E,w,R,$,14,e[18]),R=r(R,V,E,w,y,20,e[19]),w=r(w,R,V,E,v,5,e[20]),E=r(E,w,R,V,P,9,e[21]),V=r(V,E,w,R,L,14,e[22]),R=r(R,V,E,w,D,20,e[23]),w=r(w,R,V,E,z,5,e[24]),E=r(E,w,R,V,I,9,e[25]),V=r(V,E,w,R,m,14,e[26]),R=r(R,V,E,w,S,20,e[27]),w=r(w,R,V,E,T,5,e[28]),E=r(E,w,R,V,k,9,e[29]),V=r(V,E,w,R,H,14,e[30]),R=r(R,V,E,w,K,20,e[31]),w=t(w,R,V,E,v,4,e[32]),E=t(E,w,R,V,S,11,e[33]),V=t(V,E,w,R,$,16,e[34]),R=t(R,V,E,w,I,23,e[35]),w=t(w,R,V,E,C,4,e[36]),E=t(E,w,R,V,D,11,e[37]),V=t(V,E,w,R,H,16,e[38]),R=t(R,V,E,w,P,23,e[39]),w=t(w,R,V,E,T,4,e[40]),E=t(E,w,R,V,y,11,e[41]),V=t(V,E,w,R,m,16,e[42]),R=t(R,V,E,w,g,23,e[43]),w=t(w,R,V,E,z,4,e[44]),E=t(E,w,R,V,K,11,e[45]),V=t(V,E,w,R,L,16,e[46]),R=t(R,V,E,w,k,23,e[47]),w=o(w,R,V,E,y,6,e[48]),E=o(E,w,R,V,H,10,e[49]),V=o(V,E,w,R,I,15,e[50]),R=o(R,V,E,w,v,21,e[51]),w=o(w,R,V,E,K,6,e[52]),E=o(E,w,R,V,m,10,e[53]),V=o(V,E,w,R,P,15,e[54]),R=o(R,V,E,w,C,21,e[55]),w=o(w,R,V,E,S,6,e[56]),E=o(E,w,R,V,L,10,e[57]),V=o(V,E,w,R,g,15,e[58]),R=o(R,V,E,w,T,21,e[59]),w=o(w,R,V,E,D,6,e[60]),E=o(E,w,R,V,$,10,e[61]),V=o(V,E,w,R,k,15,e[62]),R=o(R,V,E,w,z,21,e[63]),f[0]=f[0]+w|0,f[1]=f[1]+R|0,f[2]=f[2]+V|0,f[3]=f[3]+E|0},_doFinalize:function(){var s=this._data,c=s.words,b=this._nDataBytes*8,a=s.sigBytes*8;c[a>>>5]|=128<<24-a%32;var i=x.floor(b/4294967296),f=b;c[(a+64>>>9<<4)+15]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360,c[(a+64>>>9<<4)+14]=(f<<8|f>>>24)&16711935|(f<<24|f>>>8)&4278255360,s.sigBytes=(c.length+1)*4,this._process();for(var y=this._hash,C=y.words,k=0;k<4;k++){var m=C[k];C[k]=(m<<8|m>>>24)&16711935|(m<<24|m>>>8)&4278255360}return y},clone:function(){var s=h.clone.call(this);return s._hash=this._hash.clone(),s}});function d(s,c,b,a,i,f,y){var C=s+(c&b|~c&a)+i+y;return(C<>>32-f)+c}function r(s,c,b,a,i,f,y){var C=s+(c&a|b&~a)+i+y;return(C<>>32-f)+c}function t(s,c,b,a,i,f,y){var C=s+(c^b^a)+i+y;return(C<>>32-f)+c}function o(s,c,b,a,i,f,y){var C=s+(b^(c|~a))+i+y;return(C<>>32-f)+c}B.MD5=h._createHelper(n),B.HmacMD5=h._createHmacHelper(n)}(Math),l.MD5})}(Se)),m0}var k0={},Ae={get exports(){return k0},set exports(_){k0=_}},Cr;function er(){return Cr||(Cr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=B.Hasher,h=x.algo,u=[],e=h.SHA1=A.extend({_doReset:function(){this._hash=new p.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(n,d){for(var r=this._hash.words,t=r[0],o=r[1],s=r[2],c=r[3],b=r[4],a=0;a<80;a++){if(a<16)u[a]=n[d+a]|0;else{var i=u[a-3]^u[a-8]^u[a-14]^u[a-16];u[a]=i<<1|i>>>31}var f=(t<<5|t>>>27)+b+u[a];a<20?f+=(o&s|~o&c)+1518500249:a<40?f+=(o^s^c)+1859775393:a<60?f+=(o&s|o&c|s&c)-1894007588:f+=(o^s^c)-899497514,b=c,c=s,s=o<<30|o>>>2,o=t,t=f}r[0]=r[0]+t|0,r[1]=r[1]+o|0,r[2]=r[2]+s|0,r[3]=r[3]+c|0,r[4]=r[4]+b|0},_doFinalize:function(){var n=this._data,d=n.words,r=this._nDataBytes*8,t=n.sigBytes*8;return d[t>>>5]|=128<<24-t%32,d[(t+64>>>9<<4)+14]=Math.floor(r/4294967296),d[(t+64>>>9<<4)+15]=r,n.sigBytes=d.length*4,this._process(),this._hash},clone:function(){var n=A.clone.call(this);return n._hash=this._hash.clone(),n}});x.SHA1=A._createHelper(e),x.HmacSHA1=A._createHmacHelper(e)}(),l.SHA1})}(Ae)),k0}var w0={},Re={get exports(){return w0},set exports(_){w0=_}},mr;function Mr(){return mr||(mr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){return function(x){var B=l,p=B.lib,A=p.WordArray,h=p.Hasher,u=B.algo,e=[],n=[];(function(){function t(b){for(var a=x.sqrt(b),i=2;i<=a;i++)if(!(b%i))return!1;return!0}function o(b){return(b-(b|0))*4294967296|0}for(var s=2,c=0;c<64;)t(s)&&(c<8&&(e[c]=o(x.pow(s,1/2))),n[c]=o(x.pow(s,1/3)),c++),s++})();var d=[],r=u.SHA256=h.extend({_doReset:function(){this._hash=new A.init(e.slice(0))},_doProcessBlock:function(t,o){for(var s=this._hash.words,c=s[0],b=s[1],a=s[2],i=s[3],f=s[4],y=s[5],C=s[6],k=s[7],m=0;m<64;m++){if(m<16)d[m]=t[o+m]|0;else{var D=d[m-15],v=(D<<25|D>>>7)^(D<<14|D>>>18)^D>>>3,g=d[m-2],H=(g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10;d[m]=v+d[m-7]+H+d[m-16]}var S=f&y^~f&C,z=c&b^c&a^b&a,P=(c<<30|c>>>2)^(c<<19|c>>>13)^(c<<10|c>>>22),$=(f<<26|f>>>6)^(f<<21|f>>>11)^(f<<7|f>>>25),K=k+$+S+n[m]+d[m],T=P+z;k=C,C=y,y=f,f=i+K|0,i=a,a=b,b=c,c=K+T|0}s[0]=s[0]+c|0,s[1]=s[1]+b|0,s[2]=s[2]+a|0,s[3]=s[3]+i|0,s[4]=s[4]+f|0,s[5]=s[5]+y|0,s[6]=s[6]+C|0,s[7]=s[7]+k|0},_doFinalize:function(){var t=this._data,o=t.words,s=this._nDataBytes*8,c=t.sigBytes*8;return o[c>>>5]|=128<<24-c%32,o[(c+64>>>9<<4)+14]=x.floor(s/4294967296),o[(c+64>>>9<<4)+15]=s,t.sigBytes=o.length*4,this._process(),this._hash},clone:function(){var t=h.clone.call(this);return t._hash=this._hash.clone(),t}});B.SHA256=h._createHelper(r),B.HmacSHA256=h._createHmacHelper(r)}(Math),l.SHA256})}(Re)),w0}var H0={},Ve={get exports(){return H0},set exports(_){H0=_}},kr;function De(){return kr||(kr=1,function(_,W){(function(l,x,B){_.exports=x(N(),Mr())})(q,function(l){return function(){var x=l,B=x.lib,p=B.WordArray,A=x.algo,h=A.SHA256,u=A.SHA224=h.extend({_doReset:function(){this._hash=new p.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var e=h._doFinalize.call(this);return e.sigBytes-=4,e}});x.SHA224=h._createHelper(u),x.HmacSHA224=h._createHmacHelper(u)}(),l.SHA224})}(Ve)),H0}var E0={},ze={get exports(){return E0},set exports(_){E0=_}},wr;function Qr(){return wr||(wr=1,function(_,W){(function(l,x,B){_.exports=x(N(),Y0())})(q,function(l){return function(){var x=l,B=x.lib,p=B.Hasher,A=x.x64,h=A.Word,u=A.WordArray,e=x.algo;function n(){return h.create.apply(h,arguments)}var d=[n(1116352408,3609767458),n(1899447441,602891725),n(3049323471,3964484399),n(3921009573,2173295548),n(961987163,4081628472),n(1508970993,3053834265),n(2453635748,2937671579),n(2870763221,3664609560),n(3624381080,2734883394),n(310598401,1164996542),n(607225278,1323610764),n(1426881987,3590304994),n(1925078388,4068182383),n(2162078206,991336113),n(2614888103,633803317),n(3248222580,3479774868),n(3835390401,2666613458),n(4022224774,944711139),n(264347078,2341262773),n(604807628,2007800933),n(770255983,1495990901),n(1249150122,1856431235),n(1555081692,3175218132),n(1996064986,2198950837),n(2554220882,3999719339),n(2821834349,766784016),n(2952996808,2566594879),n(3210313671,3203337956),n(3336571891,1034457026),n(3584528711,2466948901),n(113926993,3758326383),n(338241895,168717936),n(666307205,1188179964),n(773529912,1546045734),n(1294757372,1522805485),n(1396182291,2643833823),n(1695183700,2343527390),n(1986661051,1014477480),n(2177026350,1206759142),n(2456956037,344077627),n(2730485921,1290863460),n(2820302411,3158454273),n(3259730800,3505952657),n(3345764771,106217008),n(3516065817,3606008344),n(3600352804,1432725776),n(4094571909,1467031594),n(275423344,851169720),n(430227734,3100823752),n(506948616,1363258195),n(659060556,3750685593),n(883997877,3785050280),n(958139571,3318307427),n(1322822218,3812723403),n(1537002063,2003034995),n(1747873779,3602036899),n(1955562222,1575990012),n(2024104815,1125592928),n(2227730452,2716904306),n(2361852424,442776044),n(2428436474,593698344),n(2756734187,3733110249),n(3204031479,2999351573),n(3329325298,3815920427),n(3391569614,3928383900),n(3515267271,566280711),n(3940187606,3454069534),n(4118630271,4000239992),n(116418474,1914138554),n(174292421,2731055270),n(289380356,3203993006),n(460393269,320620315),n(685471733,587496836),n(852142971,1086792851),n(1017036298,365543100),n(1126000580,2618297676),n(1288033470,3409855158),n(1501505948,4234509866),n(1607167915,987167468),n(1816402316,1246189591)],r=[];(function(){for(var o=0;o<80;o++)r[o]=n()})();var t=e.SHA512=p.extend({_doReset:function(){this._hash=new u.init([new h.init(1779033703,4089235720),new h.init(3144134277,2227873595),new h.init(1013904242,4271175723),new h.init(2773480762,1595750129),new h.init(1359893119,2917565137),new h.init(2600822924,725511199),new h.init(528734635,4215389547),new h.init(1541459225,327033209)])},_doProcessBlock:function(o,s){for(var c=this._hash.words,b=c[0],a=c[1],i=c[2],f=c[3],y=c[4],C=c[5],k=c[6],m=c[7],D=b.high,v=b.low,g=a.high,H=a.low,S=i.high,z=i.low,P=f.high,$=f.low,K=y.high,T=y.low,I=C.high,L=C.low,w=k.high,R=k.low,V=m.high,E=m.low,O=D,U=v,G=g,F=H,i0=S,t0=z,j0=P,s0=$,Y=K,Z=T,h0=I,f0=L,l0=w,c0=R,J0=V,u0=E,j=0;j<80;j++){var Q,J,p0=r[j];if(j<16)J=p0.high=o[s+j*2]|0,Q=p0.low=o[s+j*2+1]|0;else{var ar=r[j-15],a0=ar.high,v0=ar.low,Yr=(a0>>>1|v0<<31)^(a0>>>8|v0<<24)^a0>>>7,nr=(v0>>>1|a0<<31)^(v0>>>8|a0<<24)^(v0>>>7|a0<<25),xr=r[j-2],n0=xr.high,d0=xr.low,jr=(n0>>>19|d0<<13)^(n0<<3|d0>>>29)^n0>>>6,or=(d0>>>19|n0<<13)^(d0<<3|n0>>>29)^(d0>>>6|n0<<26),ir=r[j-7],Jr=ir.high,re=ir.low,sr=r[j-16],ee=sr.high,fr=sr.low;Q=nr+re,J=Yr+Jr+(Q>>>0>>0?1:0),Q=Q+or,J=J+jr+(Q>>>0>>0?1:0),Q=Q+fr,J=J+ee+(Q>>>0>>0?1:0),p0.high=J,p0.low=Q}var te=Y&h0^~Y&l0,cr=Z&f0^~Z&c0,ae=O&G^O&i0^G&i0,ne=U&F^U&t0^F&t0,xe=(O>>>28|U<<4)^(O<<30|U>>>2)^(O<<25|U>>>7),ur=(U>>>28|O<<4)^(U<<30|O>>>2)^(U<<25|O>>>7),oe=(Y>>>14|Z<<18)^(Y>>>18|Z<<14)^(Y<<23|Z>>>9),ie=(Z>>>14|Y<<18)^(Z>>>18|Y<<14)^(Z<<23|Y>>>9),vr=d[j],se=vr.high,dr=vr.low,M=u0+ie,r0=J0+oe+(M>>>0>>0?1:0),M=M+cr,r0=r0+te+(M>>>0>>0?1:0),M=M+dr,r0=r0+se+(M>>>0>>0?1:0),M=M+Q,r0=r0+J+(M>>>0>>0?1:0),hr=ur+ne,fe=xe+ae+(hr>>>0>>0?1:0);J0=l0,u0=c0,l0=h0,c0=f0,h0=Y,f0=Z,Z=s0+M|0,Y=j0+r0+(Z>>>0>>0?1:0)|0,j0=i0,s0=t0,i0=G,t0=F,G=O,F=U,U=M+hr|0,O=r0+fe+(U>>>0>>0?1:0)|0}v=b.low=v+U,b.high=D+O+(v>>>0>>0?1:0),H=a.low=H+F,a.high=g+G+(H>>>0>>0?1:0),z=i.low=z+t0,i.high=S+i0+(z>>>0>>0?1:0),$=f.low=$+s0,f.high=P+j0+($>>>0>>0?1:0),T=y.low=T+Z,y.high=K+Y+(T>>>0>>0?1:0),L=C.low=L+f0,C.high=I+h0+(L>>>0>>0?1:0),R=k.low=R+c0,k.high=w+l0+(R>>>0>>0?1:0),E=m.low=E+u0,m.high=V+J0+(E>>>0>>0?1:0)},_doFinalize:function(){var o=this._data,s=o.words,c=this._nDataBytes*8,b=o.sigBytes*8;s[b>>>5]|=128<<24-b%32,s[(b+128>>>10<<5)+30]=Math.floor(c/4294967296),s[(b+128>>>10<<5)+31]=c,o.sigBytes=s.length*4,this._process();var a=this._hash.toX32();return a},clone:function(){var o=p.clone.call(this);return o._hash=this._hash.clone(),o},blockSize:1024/32});x.SHA512=p._createHelper(t),x.HmacSHA512=p._createHmacHelper(t)}(),l.SHA512})}(ze)),E0}var S0={},Pe={get exports(){return S0},set exports(_){S0=_}},Hr;function Fe(){return Hr||(Hr=1,function(_,W){(function(l,x,B){_.exports=x(N(),Y0(),Qr())})(q,function(l){return function(){var x=l,B=x.x64,p=B.Word,A=B.WordArray,h=x.algo,u=h.SHA512,e=h.SHA384=u.extend({_doReset:function(){this._hash=new A.init([new p.init(3418070365,3238371032),new p.init(1654270250,914150663),new p.init(2438529370,812702999),new p.init(355462360,4144912697),new p.init(1731405415,4290775857),new p.init(2394180231,1750603025),new p.init(3675008525,1694076839),new p.init(1203062813,3204075428)])},_doFinalize:function(){var n=u._doFinalize.call(this);return n.sigBytes-=16,n}});x.SHA384=u._createHelper(e),x.HmacSHA384=u._createHmacHelper(e)}(),l.SHA384})}(Pe)),S0}var A0={},qe={get exports(){return A0},set exports(_){A0=_}},Er;function We(){return Er||(Er=1,function(_,W){(function(l,x,B){_.exports=x(N(),Y0())})(q,function(l){return function(x){var B=l,p=B.lib,A=p.WordArray,h=p.Hasher,u=B.x64,e=u.Word,n=B.algo,d=[],r=[],t=[];(function(){for(var c=1,b=0,a=0;a<24;a++){d[c+5*b]=(a+1)*(a+2)/2%64;var i=b%5,f=(2*c+3*b)%5;c=i,b=f}for(var c=0;c<5;c++)for(var b=0;b<5;b++)r[c+5*b]=b+(2*c+3*b)%5*5;for(var y=1,C=0;C<24;C++){for(var k=0,m=0,D=0;D<7;D++){if(y&1){var v=(1<>>24)&16711935|(y<<24|y>>>8)&4278255360,C=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360;var k=a[f];k.high^=C,k.low^=y}for(var m=0;m<24;m++){for(var D=0;D<5;D++){for(var v=0,g=0,H=0;H<5;H++){var k=a[D+5*H];v^=k.high,g^=k.low}var S=o[D];S.high=v,S.low=g}for(var D=0;D<5;D++)for(var z=o[(D+4)%5],P=o[(D+1)%5],$=P.high,K=P.low,v=z.high^($<<1|K>>>31),g=z.low^(K<<1|$>>>31),H=0;H<5;H++){var k=a[D+5*H];k.high^=v,k.low^=g}for(var T=1;T<25;T++){var v,g,k=a[T],I=k.high,L=k.low,w=d[T];w<32?(v=I<>>32-w,g=L<>>32-w):(v=L<>>64-w,g=I<>>64-w);var R=o[r[T]];R.high=v,R.low=g}var V=o[0],E=a[0];V.high=E.high,V.low=E.low;for(var D=0;D<5;D++)for(var H=0;H<5;H++){var T=D+5*H,k=a[T],O=o[T],U=o[(D+1)%5+5*H],G=o[(D+2)%5+5*H];k.high=O.high^~U.high&G.high,k.low=O.low^~U.low&G.low}var k=a[0],F=t[m];k.high^=F.high,k.low^=F.low}},_doFinalize:function(){var c=this._data,b=c.words;this._nDataBytes*8;var a=c.sigBytes*8,i=this.blockSize*32;b[a>>>5]|=1<<24-a%32,b[(x.ceil((a+1)/i)*i>>>5)-1]|=128,c.sigBytes=b.length*4,this._process();for(var f=this._state,y=this.cfg.outputLength/8,C=y/8,k=[],m=0;m>>24)&16711935|(v<<24|v>>>8)&4278255360,g=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,k.push(g),k.push(v)}return new A.init(k,y)},clone:function(){for(var c=h.clone.call(this),b=c._state=this._state.slice(0),a=0;a<25;a++)b[a]=b[a].clone();return c}});B.SHA3=h._createHelper(s),B.HmacSHA3=h._createHmacHelper(s)}(Math),l.SHA3})}(qe)),A0}var R0={},$e={get exports(){return R0},set exports(_){R0=_}},Sr;function Ne(){return Sr||(Sr=1,function(_,W){(function(l,x){_.exports=x(N())})(q,function(l){/** @preserve (c) 2012 by Cédric Mesnil. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/plugin/console/web/assets/index-2f027361.js b/plugin/console/web/assets/index-2f027361.js deleted file mode 100644 index 8acd2a8..0000000 --- a/plugin/console/web/assets/index-2f027361.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s}from"./index-f89cf332.js";import{t as r}from"./index-c7d04dfb.js";import{l}from"./vendor-ec30964e.js";import"./index-93e74700.js";const f=Vue.defineComponent({setup(c){l().params.id;const t=Vue.ref(),i=["init","starting","started","running","going","disposing","disposed"];function n(e){return{key:e.id,label:`${e.description?JSON.stringify(e.description):""}`,children:e.children&&e.children.length?e.children.map(n):void 0,prefix:()=>Vue.h(naive.NSpace,{},[Vue.h(naive.NTag,{type:"info",size:"small"},e.id),Vue.h(naive.NTag,{type:"success",size:"small"},e.owner),Vue.h(naive.NTag,{type:"warning",size:"small"},i[e.state]),...e.blocked?[Vue.h(naive.NTag,{type:"error",size:"small"},"block")]:[],Vue.h(naive.NTime,{time:new Date(e.startTime),type:"relative"})])}}async function a(){const e=await r();t.value=n(e).children}return(e,u)=>{const o=Vue.resolveComponent("n-tree");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(s),{onTick:a}),Vue.createVNode(o,{"default-expand-all":"","show-line":"",data:t.value},null,8,["data"])])}}});export{f as default}; diff --git a/plugin/console/web/assets/index-08d6e465.js b/plugin/console/web/assets/index-3ba1fd9d.js similarity index 91% rename from plugin/console/web/assets/index-08d6e465.js rename to plugin/console/web/assets/index-3ba1fd9d.js index 795e05d..5588e6b 100644 --- a/plugin/console/web/assets/index-08d6e465.js +++ b/plugin/console/web/assets/index-3ba1fd9d.js @@ -1 +1 @@ -import{m as _,l as V}from"./vendor-ec30964e.js";import{T as y,B as g}from"./TableAction-b6863a0a.js";import{g as h}from"./index-c7d04dfb.js";import{_ as C}from"./index-93e74700.js";const v=[{title:"名称",render(n){return n.enable===!1?Vue.h("div",[Vue.h("text",n.name),Vue.h(naive.NTag,{type:"primary"},"禁用")]):Vue.h("text",n.name)},width:100},{title:"版本",key:"version",width:200}];const k=Vue.defineComponent({setup(n){const a=_(),c=V(),{params:o}=c,i=naive.useMessage(),s=Vue.ref(),u=Vue.ref([]),r=Vue.reactive({width:220,title:"操作",key:"action",render(e){return Vue.h(y,{style:"button",actions:[{label:"配置",type:"primary",icon:"ic:outline-delete-outline",onClick:l.bind(null,e)}],select:t=>{i.info(`您点击了,${t} 按钮`)}})}});function l(e){const t=e.name;a.push({name:"instance_config",params:o,query:{name:t}})}async function d(){u.value=(await h(o.id)).plugins}d();function m(e){console.log(e)}return(e,t)=>{const f=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(f,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(g),{title:"插件列表",columns:Vue.unref(v),dataSource:u.value,"row-key":p=>p.id,pagination:!1,ref_key:"actionRef",ref:s,actionColumn:Vue.unref(r),"onUpdate:checkedRowKeys":m,"scroll-x":1090},null,8,["columns","dataSource","row-key","actionColumn"])]),_:1})])}}}),F=C(k,[["__scopeId","data-v-541c4362"]]);export{F as default}; +import{m as _,l as V}from"./vendor-ec30964e.js";import{T as y,B as g}from"./TableAction-45c049b5.js";import{g as h}from"./index-cc631905.js";import{_ as C}from"./index-c14b60e2.js";const v=[{title:"名称",render(n){return n.enable===!1?Vue.h("div",[Vue.h("text",n.name),Vue.h(naive.NTag,{type:"primary"},"禁用")]):Vue.h("text",n.name)},width:100},{title:"版本",key:"version",width:200}];const k=Vue.defineComponent({setup(n){const a=_(),c=V(),{params:o}=c,i=naive.useMessage(),s=Vue.ref(),u=Vue.ref([]),r=Vue.reactive({width:220,title:"操作",key:"action",render(e){return Vue.h(y,{style:"button",actions:[{label:"配置",type:"primary",icon:"ic:outline-delete-outline",onClick:l.bind(null,e)}],select:t=>{i.info(`您点击了,${t} 按钮`)}})}});function l(e){const t=e.name;a.push({name:"instance_config",params:o,query:{name:t}})}async function d(){u.value=(await h(o.id)).plugins}d();function m(e){console.log(e)}return(e,t)=>{const f=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(f,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(g),{title:"插件列表",columns:Vue.unref(v),dataSource:u.value,"row-key":p=>p.id,pagination:!1,ref_key:"actionRef",ref:s,actionColumn:Vue.unref(r),"onUpdate:checkedRowKeys":m,"scroll-x":1090},null,8,["columns","dataSource","row-key","actionColumn"])]),_:1})])}}}),F=C(k,[["__scopeId","data-v-541c4362"]]);export{F as default}; diff --git a/plugin/console/web/assets/index-cb8a6381.js b/plugin/console/web/assets/index-46755e9c.js similarity index 96% rename from plugin/console/web/assets/index-cb8a6381.js rename to plugin/console/web/assets/index-46755e9c.js index e889ce0..6c54d95 100644 --- a/plugin/console/web/assets/index-cb8a6381.js +++ b/plugin/console/web/assets/index-46755e9c.js @@ -1 +1 @@ -import{l as D,Q as U}from"./vendor-ec30964e.js";import{o as P,q as B,r as A,u as g,v as E}from"./index-c7d04dfb.js";import{_ as H}from"./index-f89cf332.js";import"./index-93e74700.js";const L=Vue.defineComponent({setup(M){const n=naive.useMessage(),{id:a}=D().params,o=Vue.reactive({streamPath:"live/test",pushCount:0,remoteHost:"localhost",protocol:"rtmp"}),l=Vue.reactive({pullCount:0,remoteURL:"localhost/live/test",protocol:"rtmp"}),_=[{label:"rtmp://",value:"rtmp"},{label:"rtsp://",value:"rtsp"}],x=[{label:"rtmp",value:"rtmp"},{label:"rtsp",value:"rtsp"},{label:"http-flv",value:"hdl"}],d=Vue.ref(0),c=Vue.ref(0),s=Vue.ref(1e3),p=Vue.ref(1e3);function N(){g(a).then(e=>n.info(e)).catch(e=>n.error(e))}function F(){E(a).then(e=>n.info(e)).catch(e=>n.error(e))}U([o,l],()=>{o.pushCount?P(a,o).then(e=>n.info(e)).catch(e=>n.error(e)):N(),l.pullCount?B(a,l).then(e=>n.info(e)).catch(e=>n.error(e)):F()},{debounce:1e3});function w(){A(a).then(e=>{d.value=e.pushCount,c.value=e.pullCount})}return(e,u)=>{const V=Vue.resolveComponent("n-input"),r=Vue.resolveComponent("n-form-item"),m=Vue.resolveComponent("n-select"),i=Vue.resolveComponent("n-input-group"),v=Vue.resolveComponent("n-input-number"),f=Vue.resolveComponent("n-form"),C=Vue.resolveComponent("n-slider"),h=Vue.resolveComponent("n-card"),b=Vue.resolveComponent("n-space");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(H),{onTick:w}),Vue.createVNode(b,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:"推送测试"},{"header-extra":Vue.withCtx(()=>[Vue.createTextVNode(" 正在推送数量: "+Vue.toDisplayString(d.value),1)]),action:Vue.withCtx(()=>[Vue.createVNode(C,{value:Vue.unref(o).pushCount,"onUpdate:value":u[4]||(u[4]=t=>Vue.unref(o).pushCount=t),max:s.value},null,8,["value","max"])]),default:Vue.withCtx(()=>[Vue.createVNode(f,{model:Vue.unref(o)},{default:Vue.withCtx(()=>[Vue.createVNode(r,{label:"本地流",path:"streamPath"},{default:Vue.withCtx(()=>[Vue.createVNode(V,{value:Vue.unref(o).streamPath,"onUpdate:value":u[0]||(u[0]=t=>Vue.unref(o).streamPath=t),placeholder:"输入流路径"},null,8,["value"])]),_:1}),Vue.createVNode(r,{label:"目标机器",path:"remoteHost"},{default:Vue.withCtx(()=>[Vue.createVNode(i,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{value:Vue.unref(o).protocol,"onUpdate:value":u[1]||(u[1]=t=>Vue.unref(o).protocol=t),options:_,style:{width:"120px"}},null,8,["value"]),Vue.createVNode(V,{value:Vue.unref(o).remoteHost,"onUpdate:value":u[2]||(u[2]=t=>Vue.unref(o).remoteHost=t),placeholder:"输入目标机器"},null,8,["value"])]),_:1})]),_:1}),Vue.createVNode(r,{label:"最大数量",path:"pushMaxCount"},{default:Vue.withCtx(()=>[Vue.createVNode(v,{value:s.value,"onUpdate:value":u[3]||(u[3]=t=>s.value=t),placeholder:"输入数量"},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1}),Vue.createVNode(h,{title:"拉流测试"},{"header-extra":Vue.withCtx(()=>[Vue.createTextVNode(" 正在拉取数量: "+Vue.toDisplayString(c.value),1)]),action:Vue.withCtx(()=>[Vue.createVNode(C,{value:Vue.unref(l).pullCount,"onUpdate:value":u[8]||(u[8]=t=>Vue.unref(l).pullCount=t),max:p.value},null,8,["value","max"])]),default:Vue.withCtx(()=>[Vue.createVNode(f,{model:Vue.unref(l)},{default:Vue.withCtx(()=>[Vue.createVNode(r,{label:"远程地址",path:"remoteHost"},{default:Vue.withCtx(()=>[Vue.createVNode(i,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{value:Vue.unref(l).protocol,"onUpdate:value":u[5]||(u[5]=t=>Vue.unref(l).protocol=t),options:x,style:{width:"120px"}},null,8,["value"]),Vue.createVNode(V,{value:Vue.unref(l).remoteURL,"onUpdate:value":u[6]||(u[6]=t=>Vue.unref(l).remoteURL=t),placeholder:"输入远程地址"},null,8,["value"])]),_:1})]),_:1}),Vue.createVNode(r,{label:"最大数量",path:"pullMaxCount"},{default:Vue.withCtx(()=>[Vue.createVNode(v,{value:p.value,"onUpdate:value":u[7]||(u[7]=t=>p.value=t),placeholder:"输入数量"},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1})]),_:1})])}}});export{L as default}; +import{l as D,Q as U}from"./vendor-ec30964e.js";import{o as P,q as B,r as A,u as g,v as E}from"./index-cc631905.js";import{_ as H}from"./index-eabbb46f.js";import"./index-c14b60e2.js";const L=Vue.defineComponent({setup(M){const n=naive.useMessage(),{id:a}=D().params,o=Vue.reactive({streamPath:"live/test",pushCount:0,remoteHost:"localhost",protocol:"rtmp"}),l=Vue.reactive({pullCount:0,remoteURL:"localhost/live/test",protocol:"rtmp"}),_=[{label:"rtmp://",value:"rtmp"},{label:"rtsp://",value:"rtsp"}],x=[{label:"rtmp",value:"rtmp"},{label:"rtsp",value:"rtsp"},{label:"http-flv",value:"hdl"}],d=Vue.ref(0),c=Vue.ref(0),s=Vue.ref(1e3),p=Vue.ref(1e3);function N(){g(a).then(e=>n.info(e)).catch(e=>n.error(e))}function F(){E(a).then(e=>n.info(e)).catch(e=>n.error(e))}U([o,l],()=>{o.pushCount?P(a,o).then(e=>n.info(e)).catch(e=>n.error(e)):N(),l.pullCount?B(a,l).then(e=>n.info(e)).catch(e=>n.error(e)):F()},{debounce:1e3});function w(){A(a).then(e=>{d.value=e.pushCount,c.value=e.pullCount})}return(e,u)=>{const V=Vue.resolveComponent("n-input"),r=Vue.resolveComponent("n-form-item"),m=Vue.resolveComponent("n-select"),i=Vue.resolveComponent("n-input-group"),v=Vue.resolveComponent("n-input-number"),f=Vue.resolveComponent("n-form"),C=Vue.resolveComponent("n-slider"),h=Vue.resolveComponent("n-card"),b=Vue.resolveComponent("n-space");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(H),{onTick:w}),Vue.createVNode(b,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:"推送测试"},{"header-extra":Vue.withCtx(()=>[Vue.createTextVNode(" 正在推送数量: "+Vue.toDisplayString(d.value),1)]),action:Vue.withCtx(()=>[Vue.createVNode(C,{value:Vue.unref(o).pushCount,"onUpdate:value":u[4]||(u[4]=t=>Vue.unref(o).pushCount=t),max:s.value},null,8,["value","max"])]),default:Vue.withCtx(()=>[Vue.createVNode(f,{model:Vue.unref(o)},{default:Vue.withCtx(()=>[Vue.createVNode(r,{label:"本地流",path:"streamPath"},{default:Vue.withCtx(()=>[Vue.createVNode(V,{value:Vue.unref(o).streamPath,"onUpdate:value":u[0]||(u[0]=t=>Vue.unref(o).streamPath=t),placeholder:"输入流路径"},null,8,["value"])]),_:1}),Vue.createVNode(r,{label:"目标机器",path:"remoteHost"},{default:Vue.withCtx(()=>[Vue.createVNode(i,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{value:Vue.unref(o).protocol,"onUpdate:value":u[1]||(u[1]=t=>Vue.unref(o).protocol=t),options:_,style:{width:"120px"}},null,8,["value"]),Vue.createVNode(V,{value:Vue.unref(o).remoteHost,"onUpdate:value":u[2]||(u[2]=t=>Vue.unref(o).remoteHost=t),placeholder:"输入目标机器"},null,8,["value"])]),_:1})]),_:1}),Vue.createVNode(r,{label:"最大数量",path:"pushMaxCount"},{default:Vue.withCtx(()=>[Vue.createVNode(v,{value:s.value,"onUpdate:value":u[3]||(u[3]=t=>s.value=t),placeholder:"输入数量"},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1}),Vue.createVNode(h,{title:"拉流测试"},{"header-extra":Vue.withCtx(()=>[Vue.createTextVNode(" 正在拉取数量: "+Vue.toDisplayString(c.value),1)]),action:Vue.withCtx(()=>[Vue.createVNode(C,{value:Vue.unref(l).pullCount,"onUpdate:value":u[8]||(u[8]=t=>Vue.unref(l).pullCount=t),max:p.value},null,8,["value","max"])]),default:Vue.withCtx(()=>[Vue.createVNode(f,{model:Vue.unref(l)},{default:Vue.withCtx(()=>[Vue.createVNode(r,{label:"远程地址",path:"remoteHost"},{default:Vue.withCtx(()=>[Vue.createVNode(i,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{value:Vue.unref(l).protocol,"onUpdate:value":u[5]||(u[5]=t=>Vue.unref(l).protocol=t),options:x,style:{width:"120px"}},null,8,["value"]),Vue.createVNode(V,{value:Vue.unref(l).remoteURL,"onUpdate:value":u[6]||(u[6]=t=>Vue.unref(l).remoteURL=t),placeholder:"输入远程地址"},null,8,["value"])]),_:1})]),_:1}),Vue.createVNode(r,{label:"最大数量",path:"pullMaxCount"},{default:Vue.withCtx(()=>[Vue.createVNode(v,{value:p.value,"onUpdate:value":u[7]||(u[7]=t=>p.value=t),placeholder:"输入数量"},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1})]),_:1})])}}});export{L as default}; diff --git a/plugin/console/web/assets/index-cacad849.js b/plugin/console/web/assets/index-4e6efffd.js similarity index 96% rename from plugin/console/web/assets/index-cacad849.js rename to plugin/console/web/assets/index-4e6efffd.js index 14b3c58..8370050 100644 --- a/plugin/console/web/assets/index-cacad849.js +++ b/plugin/console/web/assets/index-4e6efffd.js @@ -1 +1 @@ -import{m as L,Y as U}from"./vendor-ec30964e.js";import{T as z,B as M}from"./TableAction-b6863a0a.js";import{_ as O}from"./index-f89cf332.js";import{i as g,d as j,l as q}from"./index-93e74700.js";import{x as K,y as Y,z as G,A as H}from"./index-c7d04dfb.js";function J(r){const t=Vue.ref(!1),c=Vue.ref(null),d=Vue.ref(null);return{loading:t,error:d,result:c,fetchResource:l=>(t.value=!0,r(l).then(V=>{c.value=V}).catch(V=>{d.value=V}).finally(()=>{t.value=!1}))}}function Q(){const{loading:r,error:t,result:c,fetchResource:d}=J(K);return{loading:r,error:t,list:c,fetchResource:d}}const{t:m}=g.global,W=[{title:"ID",key:"id",width:50},{title:m("名称"),key:"name",width:100},{title:"Secret",key:"secret",width:250},{title:m("创建时间"),key:"createtime",width:200},{title:m("状态"),key:"online",width:100,render(r){return Vue.h(naive.NTag,{style:{marginRight:"6px"},type:r.online==1?"success":"error",bordered:!1},{default:()=>r.online==1?m("在线"):m("离线")})}}],ne=Vue.defineComponent({setup(r){const{t}=g.global,c={name:{required:!0,trigger:["blur","input"],message:"请输入名称"}},d=naive.useDialog(),v=Vue.ref(null),l=naive.useMessage(),V=Vue.ref(),F=L(),i=Vue.ref(!1),h=Vue.ref(!1),o=Vue.reactive({name:"",resetSecret:!1}),f=Vue.ref(""),p=Vue.ref({id:"",name:"",mail:"",secret:""}),_=Vue.ref([]),w=Vue.reactive({width:200,title:t("操作"),key:"action",render(e){return Vue.h(z,{style:"button",actions:[{label:t("进入详情"),type:"primary",disabled:e.online!=1,onClick:x.bind(null,e)},{label:t("编辑"),type:"primary",onClick:N.bind(null,e),ifShow:()=>!0},{label:t("删除"),type:"error",icon:"ic:outline-delete-outline",onClick:S.bind(null,e),ifShow:()=>!0}],select:u=>{l.info(`您点击了,${u} 按钮`)}})}});function y(){o.name="",f.value=t("新建实例"),i.value=!0}function b(){const e=F.resolve({name:"instance_dashboard",params:{id:0}});location.href=e.href}async function C(){const{list:n,error:a,fetchResource:B}=Q();await B({pagesize:0,pageno:0}),a.value?l.info(`error--${a.value}`):_.value=n.value.data.list}function D(e){console.log(e)}function E(e){e.preventDefault(),h.value=!0,v.value.validate(u=>{if(u)l.error("请填写完整信息");else if(f.value==t("新建实例")){const n=o.name;G({name:n}).then(()=>{l.success("新建成功"),i.value=!1,C()})}else if(f.value==t("编辑实例")){const n=p.value.id;H({id:n,...o}).then(()=>{l.success("编辑成功"),i.value=!1,C()})}h.value=!1})}function N(e){o.name=e.name,f.value=t("编辑实例"),i.value=!0,p.value.id=e.id,p.value.name=e.name,p.value.mail=localStorage.getItem("mail")||""}function x(e){const u=e.id,n=F.resolve({name:"instance_dashboard",params:{id:u}}),{isSaas:a}=j();a.value?window.open(n.href,"_blank"):location.href=n.href}function S(e){d.warning({title:t("提示"),content:t("您确定要删除此实例吗"),positiveText:t("确定"),negativeText:t("取消"),onPositiveClick:()=>{Y({id:e.id}).then(()=>{l.success(t("删除成功"))})},onNegativeClick:()=>{}})}return(e,u)=>{const n=Vue.resolveComponent("n-icon"),a=Vue.resolveComponent("n-button"),B=Vue.resolveComponent("PlusOutlined"),A=Vue.resolveComponent("n-input"),k=Vue.resolveComponent("n-form-item"),T=Vue.resolveComponent("n-checkbox"),R=Vue.resolveComponent("n-form"),$=Vue.resolveComponent("n-space"),I=Vue.resolveComponent("n-modal"),P=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(O),{onTick:C}),Vue.createVNode(P,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(M),{columns:Vue.unref(W),dataSource:_.value,"row-key":s=>s.id,pagination:!1,ref_key:"actionRef",ref:V,actionColumn:Vue.unref(w),"onUpdate:checkedRowKeys":D,"scroll-x":1090},{tableTitle:Vue.withCtx(()=>[Vue.unref(q)?(Vue.openBlock(),Vue.createBlock(a,{key:0,type:"primary",onClick:b},{icon:Vue.withCtx(()=>[Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(U))]),_:1})]),default:Vue.withCtx(()=>[Vue.createTextVNode(" "+Vue.toDisplayString(e.$t("进入当前实例")),1)]),_:1})):(Vue.openBlock(),Vue.createBlock(a,{key:1,type:"primary",onClick:y},{icon:Vue.withCtx(()=>[Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(B)]),_:1})]),default:Vue.withCtx(()=>[Vue.createTextVNode(" "+Vue.toDisplayString(e.$t("新建")),1)]),_:1}))]),_:1},8,["columns","dataSource","row-key","actionColumn"]),Vue.createVNode(I,{show:i.value,"onUpdate:show":u[3]||(u[3]=s=>i.value=s),"show-icon":!1,preset:"dialog",title:f.value},{action:Vue.withCtx(()=>[Vue.createVNode($,null,{default:Vue.withCtx(()=>[Vue.createVNode(a,{onClick:u[2]||(u[2]=()=>i.value=!1)},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("取消")),1)]),_:1}),Vue.createVNode(a,{type:"info",loading:h.value,onClick:E},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("确定")),1)]),_:1},8,["loading"])]),_:1})]),default:Vue.withCtx(()=>[Vue.createVNode(R,{model:Vue.unref(o),rules:c,ref_key:"formRef",ref:v,"label-placement":"left","label-width":85,class:"py-4"},{default:Vue.withCtx(()=>[Vue.createVNode(k,{label:e.$t("名称"),path:"name"},{default:Vue.withCtx(()=>[Vue.createVNode(A,{placeholder:e.$t("请输入实例名称"),value:Vue.unref(o).name,"onUpdate:value":u[0]||(u[0]=s=>Vue.unref(o).name=s)},null,8,["placeholder","value"])]),_:1},8,["label"]),f.value==e.$t("编辑实例")?(Vue.openBlock(),Vue.createBlock(k,{key:0,label:e.$t("重置")+" secret",path:"resetSecret"},{default:Vue.withCtx(()=>[Vue.createVNode(T,{checked:Vue.unref(o).resetSecret,"onUpdate:checked":u[1]||(u[1]=s=>Vue.unref(o).resetSecret=s)},null,8,["checked"])]),_:1},8,["label"])):Vue.createCommentVNode("",!0)]),_:1},8,["model"])]),_:1},8,["show","title"])]),_:1})])}}});export{ne as default}; +import{m as L,Y as U}from"./vendor-ec30964e.js";import{T as z,B as M}from"./TableAction-45c049b5.js";import{_ as O}from"./index-eabbb46f.js";import{i as g,d as j,l as q}from"./index-c14b60e2.js";import{x as K,y as Y,z as G,A as H}from"./index-cc631905.js";function J(r){const t=Vue.ref(!1),c=Vue.ref(null),d=Vue.ref(null);return{loading:t,error:d,result:c,fetchResource:l=>(t.value=!0,r(l).then(V=>{c.value=V}).catch(V=>{d.value=V}).finally(()=>{t.value=!1}))}}function Q(){const{loading:r,error:t,result:c,fetchResource:d}=J(K);return{loading:r,error:t,list:c,fetchResource:d}}const{t:m}=g.global,W=[{title:"ID",key:"id",width:50},{title:m("名称"),key:"name",width:100},{title:"Secret",key:"secret",width:250},{title:m("创建时间"),key:"createtime",width:200},{title:m("状态"),key:"online",width:100,render(r){return Vue.h(naive.NTag,{style:{marginRight:"6px"},type:r.online==1?"success":"error",bordered:!1},{default:()=>r.online==1?m("在线"):m("离线")})}}],ne=Vue.defineComponent({setup(r){const{t}=g.global,c={name:{required:!0,trigger:["blur","input"],message:"请输入名称"}},d=naive.useDialog(),v=Vue.ref(null),l=naive.useMessage(),V=Vue.ref(),F=L(),i=Vue.ref(!1),h=Vue.ref(!1),o=Vue.reactive({name:"",resetSecret:!1}),f=Vue.ref(""),p=Vue.ref({id:"",name:"",mail:"",secret:""}),_=Vue.ref([]),w=Vue.reactive({width:200,title:t("操作"),key:"action",render(e){return Vue.h(z,{style:"button",actions:[{label:t("进入详情"),type:"primary",disabled:e.online!=1,onClick:x.bind(null,e)},{label:t("编辑"),type:"primary",onClick:N.bind(null,e),ifShow:()=>!0},{label:t("删除"),type:"error",icon:"ic:outline-delete-outline",onClick:S.bind(null,e),ifShow:()=>!0}],select:u=>{l.info(`您点击了,${u} 按钮`)}})}});function y(){o.name="",f.value=t("新建实例"),i.value=!0}function b(){const e=F.resolve({name:"instance_dashboard",params:{id:0}});location.href=e.href}async function C(){const{list:n,error:a,fetchResource:B}=Q();await B({pagesize:0,pageno:0}),a.value?l.info(`error--${a.value}`):_.value=n.value.data.list}function D(e){console.log(e)}function E(e){e.preventDefault(),h.value=!0,v.value.validate(u=>{if(u)l.error("请填写完整信息");else if(f.value==t("新建实例")){const n=o.name;G({name:n}).then(()=>{l.success("新建成功"),i.value=!1,C()})}else if(f.value==t("编辑实例")){const n=p.value.id;H({id:n,...o}).then(()=>{l.success("编辑成功"),i.value=!1,C()})}h.value=!1})}function N(e){o.name=e.name,f.value=t("编辑实例"),i.value=!0,p.value.id=e.id,p.value.name=e.name,p.value.mail=localStorage.getItem("mail")||""}function x(e){const u=e.id,n=F.resolve({name:"instance_dashboard",params:{id:u}}),{isSaas:a}=j();a.value?window.open(n.href,"_blank"):location.href=n.href}function S(e){d.warning({title:t("提示"),content:t("您确定要删除此实例吗"),positiveText:t("确定"),negativeText:t("取消"),onPositiveClick:()=>{Y({id:e.id}).then(()=>{l.success(t("删除成功"))})},onNegativeClick:()=>{}})}return(e,u)=>{const n=Vue.resolveComponent("n-icon"),a=Vue.resolveComponent("n-button"),B=Vue.resolveComponent("PlusOutlined"),A=Vue.resolveComponent("n-input"),k=Vue.resolveComponent("n-form-item"),T=Vue.resolveComponent("n-checkbox"),R=Vue.resolveComponent("n-form"),$=Vue.resolveComponent("n-space"),I=Vue.resolveComponent("n-modal"),P=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(O),{onTick:C}),Vue.createVNode(P,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(M),{columns:Vue.unref(W),dataSource:_.value,"row-key":s=>s.id,pagination:!1,ref_key:"actionRef",ref:V,actionColumn:Vue.unref(w),"onUpdate:checkedRowKeys":D,"scroll-x":1090},{tableTitle:Vue.withCtx(()=>[Vue.unref(q)?(Vue.openBlock(),Vue.createBlock(a,{key:0,type:"primary",onClick:b},{icon:Vue.withCtx(()=>[Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(U))]),_:1})]),default:Vue.withCtx(()=>[Vue.createTextVNode(" "+Vue.toDisplayString(e.$t("进入当前实例")),1)]),_:1})):(Vue.openBlock(),Vue.createBlock(a,{key:1,type:"primary",onClick:y},{icon:Vue.withCtx(()=>[Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(B)]),_:1})]),default:Vue.withCtx(()=>[Vue.createTextVNode(" "+Vue.toDisplayString(e.$t("新建")),1)]),_:1}))]),_:1},8,["columns","dataSource","row-key","actionColumn"]),Vue.createVNode(I,{show:i.value,"onUpdate:show":u[3]||(u[3]=s=>i.value=s),"show-icon":!1,preset:"dialog",title:f.value},{action:Vue.withCtx(()=>[Vue.createVNode($,null,{default:Vue.withCtx(()=>[Vue.createVNode(a,{onClick:u[2]||(u[2]=()=>i.value=!1)},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("取消")),1)]),_:1}),Vue.createVNode(a,{type:"info",loading:h.value,onClick:E},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("确定")),1)]),_:1},8,["loading"])]),_:1})]),default:Vue.withCtx(()=>[Vue.createVNode(R,{model:Vue.unref(o),rules:c,ref_key:"formRef",ref:v,"label-placement":"left","label-width":85,class:"py-4"},{default:Vue.withCtx(()=>[Vue.createVNode(k,{label:e.$t("名称"),path:"name"},{default:Vue.withCtx(()=>[Vue.createVNode(A,{placeholder:e.$t("请输入实例名称"),value:Vue.unref(o).name,"onUpdate:value":u[0]||(u[0]=s=>Vue.unref(o).name=s)},null,8,["placeholder","value"])]),_:1},8,["label"]),f.value==e.$t("编辑实例")?(Vue.openBlock(),Vue.createBlock(k,{key:0,label:e.$t("重置")+" secret",path:"resetSecret"},{default:Vue.withCtx(()=>[Vue.createVNode(T,{checked:Vue.unref(o).resetSecret,"onUpdate:checked":u[1]||(u[1]=s=>Vue.unref(o).resetSecret=s)},null,8,["checked"])]),_:1},8,["label"])):Vue.createCommentVNode("",!0)]),_:1},8,["model"])]),_:1},8,["show","title"])]),_:1})])}}});export{ne as default}; diff --git a/plugin/console/web/assets/index-c1d1d976.js b/plugin/console/web/assets/index-7ac94d2d.js similarity index 92% rename from plugin/console/web/assets/index-c1d1d976.js rename to plugin/console/web/assets/index-7ac94d2d.js index b9c7537..b3bb3a0 100644 --- a/plugin/console/web/assets/index-c1d1d976.js +++ b/plugin/console/web/assets/index-7ac94d2d.js @@ -1 +1 @@ -import{j as C,k as c}from"./index-c7d04dfb.js";import{T as v,B as x}from"./TableAction-b6863a0a.js";import{i as F,c as b}from"./index-93e74700.js";import{l as k}from"./vendor-ec30964e.js";const N=Vue.createTextVNode(" 全文搜索 "),D=Vue.createTextVNode(" 实时跟踪 "),I=Vue.defineComponent({setup(B){const{t:n}=F.global,a=Vue.ref(""),l=Vue.ref(""),s=Vue.ref(!0),u=k().params.id,i=Vue.ref([]),p=Vue.computed(()=>a.value?i.value.filter(e=>e.name.indexOf(a.value)!=-1):i.value);function d(e,t=""){const o={"":"K",K:"M",M:"G",G:null};return e>1024&&o[t]?d(e/1024,o[t]):(e||0).toFixed(2).replace(".00","")+t+"B"}const V=[{title:()=>Vue.h("div",[n("名称"),Vue.h(naive.NInput,{placeholder:n("按名称过滤"),size:"small",style:{width:"80%",marginLeft:"10px"},onUpdateValue(e){a.value=e}})]),key:"name",width:100},{title:n("大小"),width:100,render(e){return Vue.h("text",d(+e.size))}}];C().then(e=>{i.value=(e==null?void 0:e.files)||[],s.value=!1});async function m(e){b.push({name:"instance_log_detail",params:{id:u,logName:e.name}})}async function f(e){const t=await c(u,!0,!1);window.open(`${t}/logrotate/api/download?file=${encodeURI(e.name)}`)}async function y(){const e=await c(u,!0,!1);window.open(`${e}/logrotate/api/find?query=${l.value}`)}async function _(){const e=await c(u,!0,!1);window.open(`${e}/logrotate/api/tail`)}const w=Vue.reactive({width:220,title:n("操作"),key:"action",render(e){return Vue.h(v,{style:"button",actions:[{label:n("打开"),type:"primary",icon:"ic:outline-delete-outline",onClick:m.bind(null,e)},{label:n("下载"),type:"primary",icon:"ic:outline-delete-outline",onClick:f.bind(null,e)}]})}});return(e,t)=>{const o=Vue.resolveComponent("n-button"),g=Vue.resolveComponent("n-layout-content"),h=Vue.resolveComponent("n-layout");return Vue.openBlock(),Vue.createBlock(h,null,{default:Vue.withCtx(()=>[Vue.createVNode(g,{"content-style":"padding: 24px;"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(x),{title:e.$t("日志文件列表"),class:"table",loading:s.value,"row-class-name":"row",columns:V,dataSource:Vue.unref(p),pagination:{simple:!0},actionColumn:Vue.unref(w),"row-key":r=>r.name,"scroll-x":1090},{toolbar:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(naive.NInput),{value:l.value,"onUpdate:value":t[0]||(t[0]=r=>l.value=r),style:{"margin-right":"10px"}},null,8,["value"]),Vue.createVNode(o,{"attr-type":"button",onClick:y,style:{"margin-right":"10px"}},{default:Vue.withCtx(()=>[N]),_:1}),Vue.createVNode(o,{"attr-type":"button",onClick:_},{default:Vue.withCtx(()=>[D]),_:1})]),_:1},8,["title","loading","dataSource","actionColumn","row-key"])]),_:1})]),_:1})}}});export{I as default}; +import{j as C,k as c}from"./index-cc631905.js";import{T as v,B as x}from"./TableAction-45c049b5.js";import{i as F,c as b}from"./index-c14b60e2.js";import{l as k}from"./vendor-ec30964e.js";const N=Vue.createTextVNode(" 全文搜索 "),D=Vue.createTextVNode(" 实时跟踪 "),I=Vue.defineComponent({setup(B){const{t:n}=F.global,a=Vue.ref(""),l=Vue.ref(""),s=Vue.ref(!0),u=k().params.id,i=Vue.ref([]),p=Vue.computed(()=>a.value?i.value.filter(e=>e.name.indexOf(a.value)!=-1):i.value);function d(e,t=""){const o={"":"K",K:"M",M:"G",G:null};return e>1024&&o[t]?d(e/1024,o[t]):(e||0).toFixed(2).replace(".00","")+t+"B"}const V=[{title:()=>Vue.h("div",[n("名称"),Vue.h(naive.NInput,{placeholder:n("按名称过滤"),size:"small",style:{width:"80%",marginLeft:"10px"},onUpdateValue(e){a.value=e}})]),key:"name",width:100},{title:n("大小"),width:100,render(e){return Vue.h("text",d(+e.size))}}];C().then(e=>{i.value=(e==null?void 0:e.files)||[],s.value=!1});async function m(e){b.push({name:"instance_log_detail",params:{id:u,logName:e.name}})}async function f(e){const t=await c(u,!0,!1);window.open(`${t}/logrotate/api/download?file=${encodeURI(e.name)}`)}async function y(){const e=await c(u,!0,!1);window.open(`${e}/logrotate/api/find?query=${l.value}`)}async function _(){const e=await c(u,!0,!1);window.open(`${e}/logrotate/api/tail`)}const w=Vue.reactive({width:220,title:n("操作"),key:"action",render(e){return Vue.h(v,{style:"button",actions:[{label:n("打开"),type:"primary",icon:"ic:outline-delete-outline",onClick:m.bind(null,e)},{label:n("下载"),type:"primary",icon:"ic:outline-delete-outline",onClick:f.bind(null,e)}]})}});return(e,t)=>{const o=Vue.resolveComponent("n-button"),g=Vue.resolveComponent("n-layout-content"),h=Vue.resolveComponent("n-layout");return Vue.openBlock(),Vue.createBlock(h,null,{default:Vue.withCtx(()=>[Vue.createVNode(g,{"content-style":"padding: 24px;"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(x),{title:e.$t("日志文件列表"),class:"table",loading:s.value,"row-class-name":"row",columns:V,dataSource:Vue.unref(p),pagination:{simple:!0},actionColumn:Vue.unref(w),"row-key":r=>r.name,"scroll-x":1090},{toolbar:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(naive.NInput),{value:l.value,"onUpdate:value":t[0]||(t[0]=r=>l.value=r),style:{"margin-right":"10px"}},null,8,["value"]),Vue.createVNode(o,{"attr-type":"button",onClick:y,style:{"margin-right":"10px"}},{default:Vue.withCtx(()=>[N]),_:1}),Vue.createVNode(o,{"attr-type":"button",onClick:_},{default:Vue.withCtx(()=>[D]),_:1})]),_:1},8,["title","loading","dataSource","actionColumn","row-key"])]),_:1})]),_:1})}}});export{I as default}; diff --git a/plugin/console/web/assets/index-1d3d816b.js b/plugin/console/web/assets/index-828a5b9c.js similarity index 96% rename from plugin/console/web/assets/index-1d3d816b.js rename to plugin/console/web/assets/index-828a5b9c.js index 0c55598..3335925 100644 --- a/plugin/console/web/assets/index-1d3d816b.js +++ b/plugin/console/web/assets/index-828a5b9c.js @@ -1 +1 @@ -import{l as g}from"./vendor-ec30964e.js";import{e as T,f as S}from"./index-c7d04dfb.js";import{s as o}from"./index-de28ae1e.js";import{_ as C}from"./index-f89cf332.js";import{_ as x}from"./index-93e74700.js";const D=n=>(Vue.pushScopeId("data-v-74a4cd9b"),n=n(),Vue.popScopeId(),n),E={class:"page"},y={class:"title"},F={class:"title"},B=D(()=>Vue.createElementVNode("br",null,null,-1)),$={class:"title"},G={class:"title"},P={class:"title"},j=["srcObject"],I=Vue.defineComponent({setup(n){const h=naive.useMessage();function f(u){return u=u<<3,u>1024*1024?(u/1024/1024).toFixed(2)+" mb/s":u>1024?(u/1024).toFixed(2)+" kb/s":u.toString()+" b/s"}const w=g(),{params:i}=w,a=Vue.ref({}),t={},r=Vue.ref(null),c=Vue.ref(null),V=Vue.ref(null),p=Vue.ref(null),v=Vue.ref(null);Vue.watchEffect(()=>{r.value&&c.value&&V.value&&(t.video={bps:new o.TimelineGraphView(r.value),fps:new o.TimelineGraphView(c.value),gop:new o.TimelineGraphView(V.value),bpsds:new o.TimelineDataSeries,fpsds:new o.TimelineDataSeries,gopds:new o.TimelineDataSeries},t.video.bps.addDataSeries(t.video.bpsds),t.video.fps.addDataSeries(t.video.fpsds),t.video.gop.addDataSeries(t.video.gopds))}),Vue.watchEffect(()=>{p.value&&v.value&&(t.audio={bps:new o.TimelineGraphView(p.value),fps:new o.TimelineGraphView(v.value),bpsds:new o.TimelineDataSeries,fpsds:new o.TimelineDataSeries},t.audio.bps.addDataSeries(t.audio.bpsds),t.audio.fps.addDataSeries(t.audio.fpsds))});const _=new MediaStreamTrackGenerator({kind:"video"}),b=_.writable.getWriter(),N=new MediaStream([_]);async function k(){a.value=await T(i.id,i.streamPath.join("/")),a.value.videoTrack&&S(i.id,i.streamPath.join("/")).then(d=>{const l=new VideoDecoder({output:e=>{b.write(e),e.close(),l.close()},error:e=>{h.error(e)}});l.configure({codec:a.value.videoTrack.codec+".420028",avc:{format:"annexb"}}),l.decode(new EncodedVideoChunk({type:"key",data:d,timestamp:0}))}),[a.value.audioTrack,a.value.videoTrack].forEach((d,l)=>{var s,m;const e=l===0?"audio":"video";d&&t[e]&&(t[e].bpsds.addPoint(+new Date,d.bps<<3),t[e].fpsds.addPoint(+new Date,d.fps),(s=t[e].gopds)==null||s.addPoint(+new Date,d.gop),t[e].bps.updateEndDate(),t[e].fps.updateEndDate(),(m=t[e].gop)==null||m.updateEndDate())})}return(u,d)=>{const l=Vue.resolveComponent("n-statistic"),e=Vue.resolveComponent("n-gi"),s=Vue.resolveComponent("n-grid");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(C),{onTick:k}),Vue.createElementVNode("div",E,[Vue.createVNode(s,{"x-gap":"12",cols:6},{default:Vue.withCtx(()=>[Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("流路径"),value:a.value.path},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"1"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("状态"),value:a.value.state},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"1"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("订阅数"),value:a.value.subscribers},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:a.value.type,value:a.value.meta,"theme-overrides":{valueFontSize:"14px"}},null,8,["label","value"])]),_:1}),a.value.audioTrack?(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:0},[Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("音频轨道")+a.value.audioTrack.codec,value:a.value.audioTrack.meta,"theme-overrides":{valueFontSize:"10px"}},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("频率"),value:a.value.audioTrack.sampleRate},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("声道"),value:a.value.audioTrack.channels},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",y,"bps : "+Vue.toDisplayString(f(a.value.audioTrack.bps)),1),Vue.createElementVNode("canvas",{ref_key:"audio_bps",ref:p},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",F,"fps : "+Vue.toDisplayString(a.value.audioTrack.fps),1),Vue.createElementVNode("canvas",{ref_key:"audio_fps",ref:v},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("漂移"),value:a.value.audioTrack.delta},null,8,["label","value"])]),_:1})],64)):Vue.createCommentVNode("",!0),Vue.createVNode(e,{span:"6"},{default:Vue.withCtx(()=>[B]),_:1}),a.value.videoTrack?(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:1},[Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("视频轨道")+a.value.videoTrack.codec,value:a.value.videoTrack.meta,"theme-overrides":{valueFontSize:"10px"}},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("分辨率"),value:a.value.videoTrack.width+"x"+a.value.videoTrack.height},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("漂移"),value:a.value.videoTrack.delta},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",$,"bps : "+Vue.toDisplayString(f(a.value.videoTrack.bps)),1),Vue.createElementVNode("canvas",{ref_key:"video_bps",ref:r},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",G,"fps : "+Vue.toDisplayString(a.value.videoTrack.fps),1),Vue.createElementVNode("canvas",{ref_key:"video_fps",ref:c},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",P,"gop : "+Vue.toDisplayString(a.value.videoTrack.gop),1),Vue.createElementVNode("canvas",{ref_key:"video_gop",ref:V},null,512)]),_:1})],64)):Vue.createCommentVNode("",!0),Vue.createVNode(e,{span:"6",style:{"margin-top":"50px"}},{default:Vue.withCtx(()=>[Vue.createElementVNode("video",{id:"snapshot",srcObject:Vue.unref(N),autoplay:""},null,8,j)]),_:1})]),_:1})])])}}}),W=x(I,[["__scopeId","data-v-74a4cd9b"]]);export{W as default}; +import{l as g}from"./vendor-ec30964e.js";import{e as T,f as S}from"./index-cc631905.js";import{s as o}from"./index-de28ae1e.js";import{_ as C}from"./index-eabbb46f.js";import{_ as x}from"./index-c14b60e2.js";const D=n=>(Vue.pushScopeId("data-v-74a4cd9b"),n=n(),Vue.popScopeId(),n),E={class:"page"},y={class:"title"},F={class:"title"},B=D(()=>Vue.createElementVNode("br",null,null,-1)),$={class:"title"},G={class:"title"},P={class:"title"},j=["srcObject"],I=Vue.defineComponent({setup(n){const h=naive.useMessage();function f(u){return u=u<<3,u>1024*1024?(u/1024/1024).toFixed(2)+" mb/s":u>1024?(u/1024).toFixed(2)+" kb/s":u.toString()+" b/s"}const w=g(),{params:i}=w,a=Vue.ref({}),t={},r=Vue.ref(null),c=Vue.ref(null),V=Vue.ref(null),p=Vue.ref(null),v=Vue.ref(null);Vue.watchEffect(()=>{r.value&&c.value&&V.value&&(t.video={bps:new o.TimelineGraphView(r.value),fps:new o.TimelineGraphView(c.value),gop:new o.TimelineGraphView(V.value),bpsds:new o.TimelineDataSeries,fpsds:new o.TimelineDataSeries,gopds:new o.TimelineDataSeries},t.video.bps.addDataSeries(t.video.bpsds),t.video.fps.addDataSeries(t.video.fpsds),t.video.gop.addDataSeries(t.video.gopds))}),Vue.watchEffect(()=>{p.value&&v.value&&(t.audio={bps:new o.TimelineGraphView(p.value),fps:new o.TimelineGraphView(v.value),bpsds:new o.TimelineDataSeries,fpsds:new o.TimelineDataSeries},t.audio.bps.addDataSeries(t.audio.bpsds),t.audio.fps.addDataSeries(t.audio.fpsds))});const _=new MediaStreamTrackGenerator({kind:"video"}),b=_.writable.getWriter(),N=new MediaStream([_]);async function k(){a.value=await T(i.id,i.streamPath.join("/")),a.value.videoTrack&&S(i.id,i.streamPath.join("/")).then(d=>{const l=new VideoDecoder({output:e=>{b.write(e),e.close(),l.close()},error:e=>{h.error(e)}});l.configure({codec:a.value.videoTrack.codec+".420028",avc:{format:"annexb"}}),l.decode(new EncodedVideoChunk({type:"key",data:d,timestamp:0}))}),[a.value.audioTrack,a.value.videoTrack].forEach((d,l)=>{var s,m;const e=l===0?"audio":"video";d&&t[e]&&(t[e].bpsds.addPoint(+new Date,d.bps<<3),t[e].fpsds.addPoint(+new Date,d.fps),(s=t[e].gopds)==null||s.addPoint(+new Date,d.gop),t[e].bps.updateEndDate(),t[e].fps.updateEndDate(),(m=t[e].gop)==null||m.updateEndDate())})}return(u,d)=>{const l=Vue.resolveComponent("n-statistic"),e=Vue.resolveComponent("n-gi"),s=Vue.resolveComponent("n-grid");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(C),{onTick:k}),Vue.createElementVNode("div",E,[Vue.createVNode(s,{"x-gap":"12",cols:6},{default:Vue.withCtx(()=>[Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("流路径"),value:a.value.path},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"1"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("状态"),value:a.value.state},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"1"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("订阅数"),value:a.value.subscribers},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:a.value.type,value:a.value.meta,"theme-overrides":{valueFontSize:"14px"}},null,8,["label","value"])]),_:1}),a.value.audioTrack?(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:0},[Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("音频轨道")+a.value.audioTrack.codec,value:a.value.audioTrack.meta,"theme-overrides":{valueFontSize:"10px"}},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("频率"),value:a.value.audioTrack.sampleRate},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("声道"),value:a.value.audioTrack.channels},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",y,"bps : "+Vue.toDisplayString(f(a.value.audioTrack.bps)),1),Vue.createElementVNode("canvas",{ref_key:"audio_bps",ref:p},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",F,"fps : "+Vue.toDisplayString(a.value.audioTrack.fps),1),Vue.createElementVNode("canvas",{ref_key:"audio_fps",ref:v},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("漂移"),value:a.value.audioTrack.delta},null,8,["label","value"])]),_:1})],64)):Vue.createCommentVNode("",!0),Vue.createVNode(e,{span:"6"},{default:Vue.withCtx(()=>[B]),_:1}),a.value.videoTrack?(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:1},[Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("视频轨道")+a.value.videoTrack.codec,value:a.value.videoTrack.meta,"theme-overrides":{valueFontSize:"10px"}},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("分辨率"),value:a.value.videoTrack.width+"x"+a.value.videoTrack.height},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{label:u.$t("漂移"),value:a.value.videoTrack.delta},null,8,["label","value"])]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",$,"bps : "+Vue.toDisplayString(f(a.value.videoTrack.bps)),1),Vue.createElementVNode("canvas",{ref_key:"video_bps",ref:r},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",G,"fps : "+Vue.toDisplayString(a.value.videoTrack.fps),1),Vue.createElementVNode("canvas",{ref_key:"video_fps",ref:c},null,512)]),_:1}),Vue.createVNode(e,{span:"2"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",P,"gop : "+Vue.toDisplayString(a.value.videoTrack.gop),1),Vue.createElementVNode("canvas",{ref_key:"video_gop",ref:V},null,512)]),_:1})],64)):Vue.createCommentVNode("",!0),Vue.createVNode(e,{span:"6",style:{"margin-top":"50px"}},{default:Vue.withCtx(()=>[Vue.createElementVNode("video",{id:"snapshot",srcObject:Vue.unref(N),autoplay:""},null,8,j)]),_:1})]),_:1})])])}}}),W=x(I,[["__scopeId","data-v-74a4cd9b"]]);export{W as default}; diff --git a/plugin/console/web/assets/index-57bd3454.js b/plugin/console/web/assets/index-86f21a60.js similarity index 99% rename from plugin/console/web/assets/index-57bd3454.js rename to plugin/console/web/assets/index-86f21a60.js index dbe311d..4380a47 100644 --- a/plugin/console/web/assets/index-57bd3454.js +++ b/plugin/console/web/assets/index-86f21a60.js @@ -1,4 +1,4 @@ -import{l as R}from"./vendor-ec30964e.js";import{_ as F}from"./index-93e74700.js";import{b as q,m as L}from"./index-c7d04dfb.js";function H(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function E(e){for(var t=1;t=0)&&(n[o]=e[o]);return n}function W(e,t){if(e==null)return{};var n=U(e,t),r,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function J(e,t){return K(e)||G(e,t)||Y(e,t)||Q()}function K(e){if(Array.isArray(e))return e}function G(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,o=!1,i=void 0;try{for(var u=e[Symbol.iterator](),l;!(r=(l=u.next()).done)&&(n.push(l.value),!(t&&n.length===t));r=!0);}catch(a){o=!0,i=a}finally{try{!r&&u.return!=null&&u.return()}finally{if(o)throw i}}return n}}function Y(e,t){if(e){if(typeof e=="string")return _(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _(e,t)}}function _(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0)&&(n[o]=e[o]);return n}function W(e,t){if(e==null)return{};var n=U(e,t),r,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function J(e,t){return K(e)||G(e,t)||Y(e,t)||Q()}function K(e){if(Array.isArray(e))return e}function G(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,o=!1,i=void 0;try{for(var u=e[Symbol.iterator](),l;!(r=(l=u.next()).done)&&(n.push(l.value),!(t&&n.length===t));r=!0);}catch(a){o=!0,i=a}finally{try{!r&&u.return!=null&&u.return()}finally{if(o)throw i}}return n}}function Y(e,t){if(e){if(typeof e=="string")return _(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _(e,t)}}function _(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?e.apply(this,o):function(){for(var u=arguments.length,l=new Array(u),a=0;a1&&arguments[1]!==void 0?arguments[1]:{};v.initial(e),v.handler(t);var n={current:e},r=d(fe)(n,t),o=d(se)(n),i=d(v.changes)(e),u=d(le)(n);function l(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(y){return y};return v.selector(f),f(n.current)}function a(f){Z(r,o,i,u)(f)}return[l,a]}function le(e,t){return p(t)?t(e.current):t}function se(e,t){return e.current=P(P({},e.current),t),t}function fe(e,t,n){return p(t)?t(e.current):Object.keys(n).forEach(function(r){var o;return(o=t[r])===null||o===void 0?void 0:o.call(t,e.current[r])}),n}var de={create:ce},pe={paths:{vs:"https://fastly.jsdelivr.net/npm/monaco-editor@0.36.1/min/vs"}};function me(e){return function t(){for(var n=this,r=arguments.length,o=new Array(r),i=0;i=e.length?e.apply(this,o):function(){for(var u=arguments.length,l=new Array(u),a=0;a(Vue.pushScopeId("data-v-ffa39570"),u=u(),Vue.popScopeId(),u),I={class:"view-account"},x=r(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),y={class:"view-account-container"},C={class:"view-account-top"},N={class:"view-account-top-logo"},k={class:"view-account-top-desc"},b={class:"erweima"},A=r(()=>Vue.createElementVNode("div",null,"微信扫码关注官方微信公众号【不卡科技】即可快速登录",-1)),P=["src"],T=Vue.defineComponent({setup(u){const i=naive.useMessage(),n=Vue.ref(""),c=Vue.ref(""),d=w(),l=E(),m=e=>new Promise(o=>{const t=setTimeout(()=>{clearTimeout(t),o()},e)}),p=()=>new Promise((e,o)=>{f({myId:sessionStorage.getItem("myId")}).then(t=>{e(t)})}),a=async()=>{var e;try{const o=await p();if(console.log("是否关注",o),o&&o.data){i.success("登录成功");const t=decodeURIComponent(((e=l.query)==null?void 0:e.redirect)||"/");d.replace(t)}else await m(5e3),a()}catch(o){throw"报错"+o}},_=()=>new Promise(async e=>{const o=await S();console.log("token信息对象11: ",o);const t=o,v=["openLocation","updateTimelineShareData","chooseImage","getLocation","onMenuShareQZone","getNetworkType"];wx.config({debug:!0,appId:t.appId,timestamp:t.timestamp,nonceStr:t.nonceStr,signature:t.signature,jsApiList:v}),e()}),V=()=>{let e=sessionStorage.getItem("myId");e||(e=parseInt(Math.random()*1e6),e<1&&(e=666666)),sessionStorage.setItem("myId",e),console.log("开始获取--"),B({expire_seconds:604800,action_name:"QR_SCENE",action_info:{scene:{scene_id:e}}}).then(t=>{c.value=t.ticket,n.value=`https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=${c.value}`})};Vue.onMounted(async()=>{await _(),V(),a()});const g=h();return(e,o)=>{const t=Vue.resolveComponent("svg-icon");return Vue.openBlock(),Vue.createElementBlock("div",I,[x,Vue.createElementVNode("div",y,[Vue.createElementVNode("div",C,[Vue.createElementVNode("div",N,[Vue.createVNode(t,{name:"logo",width:"256px"})]),Vue.createElementVNode("div",k," 实例管理平台"+Vue.toDisplayString(Vue.unref(g).isSaas?"(在线版)":"(私有化体验版)"),1)]),Vue.createElementVNode("div",b,[A,n.value?(Vue.openBlock(),Vue.createElementBlock("img",{key:0,src:n.value,class:"iframe-box"},null,8,P)):Vue.createCommentVNode("",!0)])])])}}}),D=F(T,[["__scopeId","data-v-ffa39570"]]);export{D as default}; +import{s,_ as F,a as h}from"./index-c14b60e2.js";import{m as w,l as E}from"./vendor-ec30964e.js";function f(u){return s({url:"/api/wx/isSubscribe",method:"POST",data:u})}function S(){return s({url:"/api/wx/config",method:"GET"})}function B(u){return s({url:"/api/wx/qrcode",method:"POST",data:u})}const r=u=>(Vue.pushScopeId("data-v-ffa39570"),u=u(),Vue.popScopeId(),u),I={class:"view-account"},x=r(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),y={class:"view-account-container"},C={class:"view-account-top"},N={class:"view-account-top-logo"},k={class:"view-account-top-desc"},b={class:"erweima"},A=r(()=>Vue.createElementVNode("div",null,"微信扫码关注官方微信公众号【不卡科技】即可快速登录",-1)),P=["src"],T=Vue.defineComponent({setup(u){const i=naive.useMessage(),n=Vue.ref(""),c=Vue.ref(""),d=w(),l=E(),m=e=>new Promise(o=>{const t=setTimeout(()=>{clearTimeout(t),o()},e)}),p=()=>new Promise((e,o)=>{f({myId:sessionStorage.getItem("myId")}).then(t=>{e(t)})}),a=async()=>{var e;try{const o=await p();if(console.log("是否关注",o),o&&o.data){i.success("登录成功");const t=decodeURIComponent(((e=l.query)==null?void 0:e.redirect)||"/");d.replace(t)}else await m(5e3),a()}catch(o){throw"报错"+o}},_=()=>new Promise(async e=>{const o=await S();console.log("token信息对象11: ",o);const t=o,v=["openLocation","updateTimelineShareData","chooseImage","getLocation","onMenuShareQZone","getNetworkType"];wx.config({debug:!0,appId:t.appId,timestamp:t.timestamp,nonceStr:t.nonceStr,signature:t.signature,jsApiList:v}),e()}),V=()=>{let e=sessionStorage.getItem("myId");e||(e=parseInt(Math.random()*1e6),e<1&&(e=666666)),sessionStorage.setItem("myId",e),console.log("开始获取--"),B({expire_seconds:604800,action_name:"QR_SCENE",action_info:{scene:{scene_id:e}}}).then(t=>{c.value=t.ticket,n.value=`https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=${c.value}`})};Vue.onMounted(async()=>{await _(),V(),a()});const g=h();return(e,o)=>{const t=Vue.resolveComponent("svg-icon");return Vue.openBlock(),Vue.createElementBlock("div",I,[x,Vue.createElementVNode("div",y,[Vue.createElementVNode("div",C,[Vue.createElementVNode("div",N,[Vue.createVNode(t,{name:"logo",width:"256px"})]),Vue.createElementVNode("div",k," 实例管理平台"+Vue.toDisplayString(Vue.unref(g).isSaas?"(在线版)":"(私有化体验版)"),1)]),Vue.createElementVNode("div",b,[A,n.value?(Vue.openBlock(),Vue.createElementBlock("img",{key:0,src:n.value,class:"iframe-box"},null,8,P)):Vue.createCommentVNode("",!0)])])])}}}),D=F(T,[["__scopeId","data-v-ffa39570"]]);export{D as default}; diff --git a/plugin/console/web/assets/index-993672d3.js b/plugin/console/web/assets/index-993672d3.js new file mode 100644 index 0000000..c4e3491 --- /dev/null +++ b/plugin/console/web/assets/index-993672d3.js @@ -0,0 +1 @@ +import{_ as l}from"./index-eabbb46f.js";import{t as a}from"./index-cc631905.js";import{l as d}from"./vendor-ec30964e.js";import"./index-c14b60e2.js";const f=Vue.defineComponent({setup(r){d().params.id;const n=Vue.ref(),o=["init","starting","started","running","going","disposing","disposed"];function t(e){e.blocked&&(e.children=e.children?[...e.children,e.blocked]:[e.blocked]);const i=e.children&&e.children.length?e.children.map(t):void 0;return{key:e.id,label:`${e.description?JSON.stringify(e.description):""}`,children:i,prefix:()=>Vue.h(naive.NSpace,{},[Vue.h(naive.NTag,{type:"info",size:"small"},e.id),Vue.h(naive.NTag,{type:"success",size:"small"},e.owner),Vue.h(naive.NTag,{type:"warning",size:"small"},o[e.state]),...e.blocked?[Vue.h(naive.NTag,{type:"error",size:"small"},"block by "+e.blocked.id)]:[],Vue.h(naive.NTime,{time:new Date(e.startTime),type:"relative"})])}}async function s(){const e=await a();n.value=t(e).children}return(e,i)=>{const c=Vue.resolveComponent("n-tree");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(l),{onTick:s}),Vue.createVNode(c,{"default-expand-all":"","show-line":"",data:n.value},null,8,["data"])])}}});export{f as default}; diff --git a/plugin/console/web/assets/index-e45dbc1f.js b/plugin/console/web/assets/index-b301f4a4.js similarity index 94% rename from plugin/console/web/assets/index-e45dbc1f.js rename to plugin/console/web/assets/index-b301f4a4.js index fa155ca..52180e4 100644 --- a/plugin/console/web/assets/index-e45dbc1f.js +++ b/plugin/console/web/assets/index-b301f4a4.js @@ -1 +1 @@ -import{_ as y}from"./check-09a8a6df.js";import{p as s}from"./index-c7d04dfb.js";import{l as g}from"./vendor-ec30964e.js";import"./index-93e74700.js";const x={style:{padding:"24px",display:"flex"}},E=Vue.createTextVNode("查看内存信息"),w=Vue.createTextVNode("下载内存信息"),F=Vue.createTextVNode("查看CPU信息"),N=Vue.createTextVNode("下载CPU信息"),k=Vue.createElementVNode("div",{style:{"font-size":"12px"}},"CPU数据采集时长区间: 1~99 秒, 不填默认5秒",-1),B={style:{padding:"24px 24px 24px 24px"}},P=["innerHTML"],U=["src"],T=Vue.defineComponent({setup(L){const{id:p,path:f}=g().params,m=Vue.ref(!1),c=Vue.ref(""),V=Vue.ref(null),v=Vue.ref(null),i=Vue.ref("");f?c.value="":s(p,"/debug/pprof/").then(t=>{c.value=t.replace(/href="(.+)"/g,`href="${location.href}/$1"`).replace(/href='(.+)'/g,`href="${location.href}/$1"`)});const _=()=>{s(p,"/debug/pprof/heap").then(t=>{console.log("res.data.port is "+t.data.port),c.value="",i.value="http://console.monibuca.com"+t.data.port})},h=()=>{var t=V.value||5;s(p,"/debug/pprof/profile?seconds="+t).then(e=>{console.log("res.data.port is "+e.data.port),c.value="",i.value="http://console.monibuca.com"+e.data.port})},C=()=>{s(p,"d/debug/pprof/heap").then(t=>{for(var e=atob(t.data.file),o=new Uint8Array(e.length),n=0;n{var t=v.value||5;s(p,"d/debug/pprof/profile?seconds="+t).then(e=>{for(var o=atob(e.data.file),n=new Uint8Array(o.length),u=0;u{const o=Vue.resolveComponent("n-button"),n=Vue.resolveComponent("n-button-group"),u=Vue.resolveComponent("n-input-number"),l=Vue.resolveComponent("n-input-group"),r=Vue.resolveComponent("n-space"),d=Vue.resolveComponent("n-layout");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(d,null,{default:Vue.withCtx(()=>[Vue.createElementVNode("div",x,[Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(o,{type:"primary",style:{"margin-bottom":"30px","margin-right":"20px"},onClick:e[0]||(e[0]=a=>_())},{default:Vue.withCtx(()=>[E]),_:1}),Vue.createVNode(o,{type:"primary",secondary:"",style:{"margin-bottom":"30px","margin-right":"20px"},onClick:e[1]||(e[1]=a=>C())},{default:Vue.withCtx(()=>[w]),_:1})]),_:1}),Vue.createVNode(r,{vertical:"",style:{display:"inline-flex","margin-right":"20px"}},{default:Vue.withCtx(()=>[Vue.createVNode(l,null,{default:Vue.withCtx(()=>[Vue.createVNode(u,{"show-button":!1,style:{width:"180px"},value:V.value,"onUpdate:value":e[2]||(e[2]=a=>V.value=a),min:1,max:99,placeholder:"请输入CPU数据采集时长"},null,8,["value"]),Vue.createVNode(o,{type:"primary",onClick:e[3]||(e[3]=a=>h())},{default:Vue.withCtx(()=>[F]),_:1}),Vue.createVNode(o,{type:"primary",secondary:"",onClick:e[4]||(e[4]=a=>b())},{default:Vue.withCtx(()=>[N]),_:1})]),_:1}),k]),_:1})]),Vue.createElementVNode("div",B,[Vue.createVNode(y,{name:"Debug",value:m.value,"onUpdate:value":e[5]||(e[5]=a=>m.value=a)},null,8,["value"]),m.value?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",{key:0,innerHTML:c.value},null,8,P)),i.value?(Vue.openBlock(),Vue.createElementBlock("iframe",{key:1,src:i.value,width:"100%",height:"800"},null,8,U)):Vue.createCommentVNode("",!0)])]),_:1})])}}});export{T as default}; +import{_ as y}from"./check-b0b21f0d.js";import{p as s}from"./index-cc631905.js";import{l as g}from"./vendor-ec30964e.js";import"./index-c14b60e2.js";const x={style:{padding:"24px",display:"flex"}},E=Vue.createTextVNode("查看内存信息"),w=Vue.createTextVNode("下载内存信息"),F=Vue.createTextVNode("查看CPU信息"),N=Vue.createTextVNode("下载CPU信息"),k=Vue.createElementVNode("div",{style:{"font-size":"12px"}},"CPU数据采集时长区间: 1~99 秒, 不填默认5秒",-1),B={style:{padding:"24px 24px 24px 24px"}},P=["innerHTML"],U=["src"],T=Vue.defineComponent({setup(L){const{id:p,path:f}=g().params,m=Vue.ref(!1),c=Vue.ref(""),V=Vue.ref(null),v=Vue.ref(null),i=Vue.ref("");f?c.value="":s(p,"/debug/pprof/").then(t=>{c.value=t.replace(/href="(.+)"/g,`href="${location.href}/$1"`).replace(/href='(.+)'/g,`href="${location.href}/$1"`)});const _=()=>{s(p,"/debug/pprof/heap").then(t=>{console.log("res.data.port is "+t.data.port),c.value="",i.value="http://console.monibuca.com"+t.data.port})},h=()=>{var t=V.value||5;s(p,"/debug/pprof/profile?seconds="+t).then(e=>{console.log("res.data.port is "+e.data.port),c.value="",i.value="http://console.monibuca.com"+e.data.port})},C=()=>{s(p,"d/debug/pprof/heap").then(t=>{for(var e=atob(t.data.file),o=new Uint8Array(e.length),n=0;n{var t=v.value||5;s(p,"d/debug/pprof/profile?seconds="+t).then(e=>{for(var o=atob(e.data.file),n=new Uint8Array(o.length),u=0;u{const o=Vue.resolveComponent("n-button"),n=Vue.resolveComponent("n-button-group"),u=Vue.resolveComponent("n-input-number"),l=Vue.resolveComponent("n-input-group"),r=Vue.resolveComponent("n-space"),d=Vue.resolveComponent("n-layout");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(d,null,{default:Vue.withCtx(()=>[Vue.createElementVNode("div",x,[Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(o,{type:"primary",style:{"margin-bottom":"30px","margin-right":"20px"},onClick:e[0]||(e[0]=a=>_())},{default:Vue.withCtx(()=>[E]),_:1}),Vue.createVNode(o,{type:"primary",secondary:"",style:{"margin-bottom":"30px","margin-right":"20px"},onClick:e[1]||(e[1]=a=>C())},{default:Vue.withCtx(()=>[w]),_:1})]),_:1}),Vue.createVNode(r,{vertical:"",style:{display:"inline-flex","margin-right":"20px"}},{default:Vue.withCtx(()=>[Vue.createVNode(l,null,{default:Vue.withCtx(()=>[Vue.createVNode(u,{"show-button":!1,style:{width:"180px"},value:V.value,"onUpdate:value":e[2]||(e[2]=a=>V.value=a),min:1,max:99,placeholder:"请输入CPU数据采集时长"},null,8,["value"]),Vue.createVNode(o,{type:"primary",onClick:e[3]||(e[3]=a=>h())},{default:Vue.withCtx(()=>[F]),_:1}),Vue.createVNode(o,{type:"primary",secondary:"",onClick:e[4]||(e[4]=a=>b())},{default:Vue.withCtx(()=>[N]),_:1})]),_:1}),k]),_:1})]),Vue.createElementVNode("div",B,[Vue.createVNode(y,{name:"Debug",value:m.value,"onUpdate:value":e[5]||(e[5]=a=>m.value=a)},null,8,["value"]),m.value?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",{key:0,innerHTML:c.value},null,8,P)),i.value?(Vue.openBlock(),Vue.createElementBlock("iframe",{key:1,src:i.value,width:"100%",height:"800"},null,8,U)):Vue.createCommentVNode("",!0)])]),_:1})])}}});export{T as default}; diff --git a/plugin/console/web/assets/index-4d0940bd.js b/plugin/console/web/assets/index-b48a47a5.js similarity index 96% rename from plugin/console/web/assets/index-4d0940bd.js rename to plugin/console/web/assets/index-b48a47a5.js index d66c763..18b5317 100644 --- a/plugin/console/web/assets/index-4d0940bd.js +++ b/plugin/console/web/assets/index-b48a47a5.js @@ -1 +1 @@ -import{_ as x,i as A,P as b,u as D,g as S,b as I}from"./index-93e74700.js";import{m as R,l as k,K as B,N as $}from"./vendor-ec30964e.js";const E=c=>(Vue.pushScopeId("data-v-b6411e00"),c=c(),Vue.popScopeId(),c),z={class:"view-account"},P=E(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),T={class:"view-account-container"},U={class:"view-account-top"},q=E(()=>Vue.createElementVNode("div",{class:"view-account-top-logo"},[Vue.createElementVNode("img",{src:I,alt:""}),Vue.createElementVNode("h2",{class:"title"},"Monibuca")],-1)),M={class:"view-account-top-desc"},O={class:"view-account-form"},G=Vue.defineComponent({setup(c){const{t:a}=A.global,V=Vue.ref(!1),p=Vue.ref(a("发送邮箱验证码")),i=Vue.ref(60),_=Vue.ref(),r=naive.useMessage(),f=Vue.ref(!1),h=b.BASE_REGISTER_NAME,e=Vue.reactive({password:"",mail:"",verifycode:""}),w={mail:{required:!0,message:a("请输入邮箱"),trigger:"blur"},password:{required:!0,message:a("请输入密码"),trigger:"blur"},verifycode:{required:!0,message:a("请邮箱验证码"),trigger:"blur"}},F=D(),v=R(),C=k(),g=t=>{t.preventDefault(),_.value.validate(async u=>{var s;if(u)r.error("请填写正确信息");else{const{verifycode:l,password:n,mail:d}=e;r.loading("注册中..."),f.value=!0;const m={verifycode:l,password:n,mail:d};try{const o=await F.register(m);if(r.destroyAll(),o.code==0){const y=decodeURIComponent(((s=C.query)==null?void 0:s.redirect)||"/");r.success("注册成功,即将进入系统"),C.name===h?v.replace("/"):v.replace(y)}else r.info(o.msg||"登录失败")}finally{f.value=!1}}})};function N(){if(!e.mail)r.info(a("请输入邮箱验证码"));else{const t={mail:e.mail};S(t).then(()=>{r.info(a("验证码发送成功,请注意查收"));const u=setInterval(()=>{V.value=!0,p.value=`(${i.value}秒)后重新发送`,i.value--,i.value<0&&(clearInterval(u),p.value=a("发送邮箱验证码"),V.value=!1,i.value=10)},1e3)})}}return(t,u)=>{const s=Vue.resolveComponent("n-icon"),l=Vue.resolveComponent("n-input"),n=Vue.resolveComponent("n-form-item"),d=Vue.resolveComponent("n-button"),m=Vue.resolveComponent("n-form");return Vue.openBlock(),Vue.createElementBlock("div",z,[P,Vue.createElementVNode("div",T,[Vue.createElementVNode("div",U,[q,Vue.createElementVNode("div",M,Vue.toDisplayString(t.$t("实例管理平台")),1)]),Vue.createElementVNode("div",O,[Vue.createVNode(m,{ref_key:"formRef",ref:_,"label-placement":"left",size:"large",model:Vue.unref(e),rules:w},{default:Vue.withCtx(()=>[Vue.createVNode(n,{path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{value:Vue.unref(e).mail,"onUpdate:value":u[0]||(u[0]=o=>Vue.unref(e).mail=o),placeholder:t.$t("请输入邮箱帐号")},{prefix:Vue.withCtx(()=>[Vue.createVNode(s,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(B))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(n,{path:"verifycode"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{value:Vue.unref(e).verifycode,"onUpdate:value":u[1]||(u[1]=o=>Vue.unref(e).verifycode=o),placeholder:t.$t("请输入邮箱验证码")},{prefix:Vue.withCtx(()=>[Vue.createVNode(s,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(B))]),_:1})]),_:1},8,["value","placeholder"]),Vue.createVNode(d,{type:"success",onClick:N,disabled:V.value},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(p.value),1)]),_:1},8,["disabled"])]),_:1}),Vue.createVNode(n,{path:"password"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{value:Vue.unref(e).password,"onUpdate:value":u[2]||(u[2]=o=>Vue.unref(e).password=o),type:"password",showPasswordOn:"click",placeholder:t.$t("请输入密码")},{prefix:Vue.withCtx(()=>[Vue.createVNode(s,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref($))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(d,{type:"primary",onClick:g,size:"large",loading:f.value,block:""},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(t.$t("注册")),1)]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])])])}}}),j=x(G,[["__scopeId","data-v-b6411e00"]]);export{j as default}; +import{_ as x,i as A,P as b,u as D,g as S,b as I}from"./index-c14b60e2.js";import{m as R,l as k,K as B,N as $}from"./vendor-ec30964e.js";const E=c=>(Vue.pushScopeId("data-v-b6411e00"),c=c(),Vue.popScopeId(),c),z={class:"view-account"},P=E(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),T={class:"view-account-container"},U={class:"view-account-top"},q=E(()=>Vue.createElementVNode("div",{class:"view-account-top-logo"},[Vue.createElementVNode("img",{src:I,alt:""}),Vue.createElementVNode("h2",{class:"title"},"Monibuca")],-1)),M={class:"view-account-top-desc"},O={class:"view-account-form"},G=Vue.defineComponent({setup(c){const{t:a}=A.global,V=Vue.ref(!1),p=Vue.ref(a("发送邮箱验证码")),i=Vue.ref(60),_=Vue.ref(),r=naive.useMessage(),f=Vue.ref(!1),h=b.BASE_REGISTER_NAME,e=Vue.reactive({password:"",mail:"",verifycode:""}),w={mail:{required:!0,message:a("请输入邮箱"),trigger:"blur"},password:{required:!0,message:a("请输入密码"),trigger:"blur"},verifycode:{required:!0,message:a("请邮箱验证码"),trigger:"blur"}},F=D(),v=R(),C=k(),g=t=>{t.preventDefault(),_.value.validate(async u=>{var s;if(u)r.error("请填写正确信息");else{const{verifycode:l,password:n,mail:d}=e;r.loading("注册中..."),f.value=!0;const m={verifycode:l,password:n,mail:d};try{const o=await F.register(m);if(r.destroyAll(),o.code==0){const y=decodeURIComponent(((s=C.query)==null?void 0:s.redirect)||"/");r.success("注册成功,即将进入系统"),C.name===h?v.replace("/"):v.replace(y)}else r.info(o.msg||"登录失败")}finally{f.value=!1}}})};function N(){if(!e.mail)r.info(a("请输入邮箱验证码"));else{const t={mail:e.mail};S(t).then(()=>{r.info(a("验证码发送成功,请注意查收"));const u=setInterval(()=>{V.value=!0,p.value=`(${i.value}秒)后重新发送`,i.value--,i.value<0&&(clearInterval(u),p.value=a("发送邮箱验证码"),V.value=!1,i.value=10)},1e3)})}}return(t,u)=>{const s=Vue.resolveComponent("n-icon"),l=Vue.resolveComponent("n-input"),n=Vue.resolveComponent("n-form-item"),d=Vue.resolveComponent("n-button"),m=Vue.resolveComponent("n-form");return Vue.openBlock(),Vue.createElementBlock("div",z,[P,Vue.createElementVNode("div",T,[Vue.createElementVNode("div",U,[q,Vue.createElementVNode("div",M,Vue.toDisplayString(t.$t("实例管理平台")),1)]),Vue.createElementVNode("div",O,[Vue.createVNode(m,{ref_key:"formRef",ref:_,"label-placement":"left",size:"large",model:Vue.unref(e),rules:w},{default:Vue.withCtx(()=>[Vue.createVNode(n,{path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{value:Vue.unref(e).mail,"onUpdate:value":u[0]||(u[0]=o=>Vue.unref(e).mail=o),placeholder:t.$t("请输入邮箱帐号")},{prefix:Vue.withCtx(()=>[Vue.createVNode(s,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(B))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(n,{path:"verifycode"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{value:Vue.unref(e).verifycode,"onUpdate:value":u[1]||(u[1]=o=>Vue.unref(e).verifycode=o),placeholder:t.$t("请输入邮箱验证码")},{prefix:Vue.withCtx(()=>[Vue.createVNode(s,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(B))]),_:1})]),_:1},8,["value","placeholder"]),Vue.createVNode(d,{type:"success",onClick:N,disabled:V.value},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(p.value),1)]),_:1},8,["disabled"])]),_:1}),Vue.createVNode(n,{path:"password"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{value:Vue.unref(e).password,"onUpdate:value":u[2]||(u[2]=o=>Vue.unref(e).password=o),type:"password",showPasswordOn:"click",placeholder:t.$t("请输入密码")},{prefix:Vue.withCtx(()=>[Vue.createVNode(s,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref($))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(n,null,{default:Vue.withCtx(()=>[Vue.createVNode(d,{type:"primary",onClick:g,size:"large",loading:f.value,block:""},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(t.$t("注册")),1)]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])])])}}}),j=x(G,[["__scopeId","data-v-b6411e00"]]);export{j as default}; diff --git a/plugin/console/web/assets/index-fb6c1d63.js b/plugin/console/web/assets/index-b5869e2f.js similarity index 98% rename from plugin/console/web/assets/index-fb6c1d63.js rename to plugin/console/web/assets/index-b5869e2f.js index 818ae45..9aa7095 100644 --- a/plugin/console/web/assets/index-fb6c1d63.js +++ b/plugin/console/web/assets/index-b5869e2f.js @@ -1 +1 @@ -import{_ as F,i as E,u as N,a as y,P as S}from"./index-93e74700.js";import{m as k,l as x,K as b,N as A}from"./vendor-ec30964e.js";const D=""+new URL("../guide.png",import.meta.url).href;const R=n=>(Vue.pushScopeId("data-v-4051bd7c"),n=n(),Vue.popScopeId(),n),I={class:"view-account"},P=R(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),$={class:"view-account-container"},U={class:"view-account-top"},z={class:"view-account-top-logo"},q={class:"view-account-top-desc"},O={class:"view-account-form"},j={class:"flex view-account-other"},L={class:"flex-initial",style:{"margin-left":"auto"}},M={key:0,src:D,width:"300"},T=Vue.defineComponent({setup(n){const{t:c}=E.global,_=Vue.ref(),l=naive.useMessage(),s=Vue.ref(!1),u=Vue.reactive({mail:"",password:"",isCaptcha:!0}),v={mail:{required:!0,message:c("请输入邮箱"),trigger:"blur"},password:{required:!0,message:c("请输入密码"),trigger:"blur"}},C=N(),i=y(),d=k(),h=x(),f=()=>{_.value.validate(async e=>{var t;if(e)l.error("请填写完整信息,并且进行验证码校验");else{const{mail:V,password:a}=u;s.value=!0;const r={mail:V,password:a};try{const o=await C.login(r);if(l.destroyAll(),o.code==0){const p=decodeURIComponent(((t=h.query)==null?void 0:t.redirect)||"/");l.success(c("登录成功")),d.replace(p)}}catch{s.value=!1}finally{s.value=!1}}})};function w(){d.push({name:S.BASE_REGISTER_NAME})}function g(){d.push({name:"root_password"})}return document.onkeydown=function(e){e.key=="Enter"&&f()},(e,t)=>{const V=Vue.resolveComponent("svg-icon"),a=Vue.resolveComponent("n-icon"),r=Vue.resolveComponent("n-input"),o=Vue.resolveComponent("n-form-item"),p=Vue.resolveComponent("n-button"),B=Vue.resolveComponent("n-form");return Vue.openBlock(),Vue.createElementBlock("div",I,[P,Vue.createElementVNode("div",$,[Vue.createElementVNode("div",U,[Vue.createElementVNode("div",z,[Vue.createVNode(V,{name:"logo",width:"256px"})]),Vue.createElementVNode("div",q,Vue.toDisplayString(Vue.unref(i).isSaas?e.$t("实例管理平台"):"实例管理平台(私有化体验版)"),1)]),Vue.createElementVNode("div",O,[Vue.createVNode(B,{ref_key:"formRef",ref:_,"label-placement":"left",size:"large",model:Vue.unref(u),rules:v},{default:Vue.withCtx(()=>[Vue.createVNode(o,{path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(r,{value:Vue.unref(u).mail,"onUpdate:value":t[0]||(t[0]=m=>Vue.unref(u).mail=m),placeholder:e.$t("请输入账号")},{prefix:Vue.withCtx(()=>[Vue.createVNode(a,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(b))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(o,{path:"password"},{default:Vue.withCtx(()=>[Vue.createVNode(r,{value:Vue.unref(u).password,"onUpdate:value":t[1]||(t[1]=m=>Vue.unref(u).password=m),type:"password",showPasswordOn:"click",placeholder:e.$t("请输入密码")},{prefix:Vue.withCtx(()=>[Vue.createVNode(a,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(A))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(o,null,{default:Vue.withCtx(()=>[Vue.createVNode(p,{type:"primary",onClick:f,size:"large",loading:s.value,block:""},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("登录")),1)]),_:1},8,["loading"])]),_:1}),Vue.unref(i).isSaas?(Vue.openBlock(),Vue.createBlock(o,{key:0,class:"default-color"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",j,[Vue.createElementVNode("div",L,[Vue.createElementVNode("a",{onClick:w},Vue.toDisplayString(e.$t("注册账号")),1),Vue.createElementVNode("a",{style:{"margin-left":"20px"},onClick:g},Vue.toDisplayString(e.$t("忘记密码")),1)])])]),_:1})):Vue.createCommentVNode("",!0)]),_:1},8,["model"])])]),Vue.unref(i).isSaas?(Vue.openBlock(),Vue.createElementBlock("img",M)):Vue.createCommentVNode("",!0)])}}}),H=F(T,[["__scopeId","data-v-4051bd7c"]]);export{H as default}; +import{_ as F,i as E,u as N,a as y,P as S}from"./index-c14b60e2.js";import{m as k,l as x,K as b,N as A}from"./vendor-ec30964e.js";const D=""+new URL("../guide.png",import.meta.url).href;const R=n=>(Vue.pushScopeId("data-v-4051bd7c"),n=n(),Vue.popScopeId(),n),I={class:"view-account"},P=R(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),$={class:"view-account-container"},U={class:"view-account-top"},z={class:"view-account-top-logo"},q={class:"view-account-top-desc"},O={class:"view-account-form"},j={class:"flex view-account-other"},L={class:"flex-initial",style:{"margin-left":"auto"}},M={key:0,src:D,width:"300"},T=Vue.defineComponent({setup(n){const{t:c}=E.global,_=Vue.ref(),l=naive.useMessage(),s=Vue.ref(!1),u=Vue.reactive({mail:"",password:"",isCaptcha:!0}),v={mail:{required:!0,message:c("请输入邮箱"),trigger:"blur"},password:{required:!0,message:c("请输入密码"),trigger:"blur"}},C=N(),i=y(),d=k(),h=x(),f=()=>{_.value.validate(async e=>{var t;if(e)l.error("请填写完整信息,并且进行验证码校验");else{const{mail:V,password:a}=u;s.value=!0;const r={mail:V,password:a};try{const o=await C.login(r);if(l.destroyAll(),o.code==0){const p=decodeURIComponent(((t=h.query)==null?void 0:t.redirect)||"/");l.success(c("登录成功")),d.replace(p)}}catch{s.value=!1}finally{s.value=!1}}})};function w(){d.push({name:S.BASE_REGISTER_NAME})}function g(){d.push({name:"root_password"})}return document.onkeydown=function(e){e.key=="Enter"&&f()},(e,t)=>{const V=Vue.resolveComponent("svg-icon"),a=Vue.resolveComponent("n-icon"),r=Vue.resolveComponent("n-input"),o=Vue.resolveComponent("n-form-item"),p=Vue.resolveComponent("n-button"),B=Vue.resolveComponent("n-form");return Vue.openBlock(),Vue.createElementBlock("div",I,[P,Vue.createElementVNode("div",$,[Vue.createElementVNode("div",U,[Vue.createElementVNode("div",z,[Vue.createVNode(V,{name:"logo",width:"256px"})]),Vue.createElementVNode("div",q,Vue.toDisplayString(Vue.unref(i).isSaas?e.$t("实例管理平台"):"实例管理平台(私有化体验版)"),1)]),Vue.createElementVNode("div",O,[Vue.createVNode(B,{ref_key:"formRef",ref:_,"label-placement":"left",size:"large",model:Vue.unref(u),rules:v},{default:Vue.withCtx(()=>[Vue.createVNode(o,{path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(r,{value:Vue.unref(u).mail,"onUpdate:value":t[0]||(t[0]=m=>Vue.unref(u).mail=m),placeholder:e.$t("请输入账号")},{prefix:Vue.withCtx(()=>[Vue.createVNode(a,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(b))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(o,{path:"password"},{default:Vue.withCtx(()=>[Vue.createVNode(r,{value:Vue.unref(u).password,"onUpdate:value":t[1]||(t[1]=m=>Vue.unref(u).password=m),type:"password",showPasswordOn:"click",placeholder:e.$t("请输入密码")},{prefix:Vue.withCtx(()=>[Vue.createVNode(a,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(A))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(o,null,{default:Vue.withCtx(()=>[Vue.createVNode(p,{type:"primary",onClick:f,size:"large",loading:s.value,block:""},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("登录")),1)]),_:1},8,["loading"])]),_:1}),Vue.unref(i).isSaas?(Vue.openBlock(),Vue.createBlock(o,{key:0,class:"default-color"},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",j,[Vue.createElementVNode("div",L,[Vue.createElementVNode("a",{onClick:w},Vue.toDisplayString(e.$t("注册账号")),1),Vue.createElementVNode("a",{style:{"margin-left":"20px"},onClick:g},Vue.toDisplayString(e.$t("忘记密码")),1)])])]),_:1})):Vue.createCommentVNode("",!0)]),_:1},8,["model"])])]),Vue.unref(i).isSaas?(Vue.openBlock(),Vue.createElementBlock("img",M)):Vue.createCommentVNode("",!0)])}}}),H=F(T,[["__scopeId","data-v-4051bd7c"]]);export{H as default}; diff --git a/plugin/console/web/assets/index-93e74700.js b/plugin/console/web/assets/index-c14b60e2.js similarity index 92% rename from plugin/console/web/assets/index-93e74700.js rename to plugin/console/web/assets/index-c14b60e2.js index f5a8a11..1f0ef47 100644 --- a/plugin/console/web/assets/index-93e74700.js +++ b/plugin/console/web/assets/index-c14b60e2.js @@ -1 +1 @@ -import{d as H,c as De,a as Fe,b as Ie,u as xe,z as ze,e as He,D as te,S as ue,P as je,H as he,U as Se,A as Ue,V as We,f as Ge,g as Ke,M as qe,F as Ze,B as Xe,h as Je,i as Ye,E as Qe,j as et,k as tt,l as F,m as be,T as nt,L as ot,G as st,n as rt,o as at,p as it,q as ut,r as lt,s as ct,R as dt,t as mt,v as pt,C as ke,w as ht,x as gt,y as Te,I as ge,J as Vt}from"./vendor-ec30964e.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))o(s);new MutationObserver(s=>{for(const r of s)if(r.type==="childList")for(const a of r.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&o(a)}).observe(document,{childList:!0,subtree:!0});function n(s){const r={};return s.integrity&&(r.integrity=s.integrity),s.referrerPolicy&&(r.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?r.credentials="include":s.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function o(s){if(s.ep)return;s.ep=!0;const r=n(s);fetch(s.href,r)}})();const $=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n},ft={name:"Index",props:{collapsed:{type:Boolean}}},_t={class:"logo"},vt={class:"title"};function wt(e,t,n,o,s,r){const a=Vue.resolveComponent("svg-icon");return Vue.openBlock(),Vue.createElementBlock("div",_t,[Vue.createVNode(a,{name:"logo2",height:"32px",width:"64px",class:Vue.normalizeClass(["icon",{"mr-2":!n.collapsed}])},null,8,["class"]),Vue.withDirectives(Vue.createElementVNode("h2",vt,"Monibuca",512),[[Vue.vShow,!n.collapsed]])])}const Ve=$(ft,[["render",wt],["__scopeId","data-v-5cb6b15e"]]),yt=["#2d8cf0","#0960bd","#0084f4","#009688","#536dfe","#ff5c93","#ee4f12","#0096c7","#9c27b0","#ff9800","#FF3D68","#00C1D4","#71EFA3","#171010","#78DEC7","#1768AC","#FB9300","#FC5404"],Ct={darkTheme:!1,appTheme:"#5a00ff",appThemeList:yt},Et={navMode:"vertical",navTheme:"dark",isMobile:!1,headerSetting:{bgColor:"#fff",fixed:!0,isReload:!0},showFooter:!0,multiTabsSetting:{bgColor:"#fff",show:!0,fixed:!0},menuSetting:{minMenuWidth:64,menuWidth:200,fixed:!0,mixMenu:!1,mobileWidth:800,collapsed:!1},crumbsSetting:{show:!0,showIcon:!1},permissionMode:"FIXED",isPageAnimate:!0,pageAnimateType:"zoom-fade"},{darkTheme:St,appTheme:bt,appThemeList:kt}=Ct,le=H({id:"app-design-setting",state:()=>({darkTheme:St,appTheme:bt,appThemeList:kt}),getters:{getDarkTheme(){return this.darkTheme},getAppTheme(){return this.appTheme},getAppThemeList(){return this.appThemeList}},actions:{}});var P=(e=>(e.En="en",e.Zh="zh-Hans",e))(P||{});const Tt={},Nt={主题配置:"Theme Config",返回首页:"Back to Home",实例管理平台:"Instance Management Platform",用户未登录:"User not logged in",登录成功:"Login Success",请输入账号:"Please enter account",请输入邮箱:"Please enter email",请输入邮箱验证码:"Please enter email verification code",请输入密码:"Please enter password",注册账号:"Register Account",忘记密码:"Forget Password",修改密码:"Change Password",重置密码:"Reset Password",新密码:"New Password",旧密码:"Old Password",请输入旧密码:"Please enter old password",请输入新密码:"Please enter new password","修改密码成功,下次登录请使用新密码!":"Change password successfully, please use the new password next time you log in!","验证失败,请填写完整信息":"Verification failed, please fill in the complete information","验证码发送成功,请注意查收":"Verification code sent successfully, please check it carefully","点击重置密码后,请到绑定邮箱中查看重置密码,并点击链接进行激活":"After clicking the reset password, please check the reset password in the bound email, and click the link to activate","重置密码失败,请稍后再试":"Reset password failed, please try again later","重置密码成功,请登录邮箱查看重置密码,并进行激活":"Reset password successfully, please log in to the email to check the reset password, and activate it",发送邮箱验证码:"Send Email Verification Code",登录:"Login",退出登录:"Logout",注册:"Register",关于:"About",设置:"Setting",实例管理:"Instances",实例列表:"Instance List",实例详情:"Instance Detail",仪表盘:"Dashboard",配置管理:"Configuration",流列表:"Streams",流详情:"Stream Detail",插件列表:"Plugins",日志分析:"Log Analysis",日志详情:"Log Detail",监控记录:"Monitor Records",监控记录详情:"Monitor Record Detail",性能分析:"pprof",性能分析详情:"pprof Detail",地址生成器:"Address Generator",名称:"Name",创建时间:"CreateTime",状态:"Status",在线:"Online",离线:"Offline",操作:"Operation",进入详情:"Detail",重启:"Restart",编辑:"Edit",删除:"Delete",删除成功:"Delete Success",您确定要删除此实例吗:"Are you sure you want to delete this instance?",您确定要退出登录吗:"Are you sure you want to log out?",新建实例:"New Instance",编辑实例:"Edit Instance",确定:"Confirm",取消:"Cancel",提示:"Tips",新建:"Create",新建成功:"Create Success",请输入实例名称:"Please enter instance name",所有接口定时刷新间隔:"All request timing refresh interval",重置:"Reset",基本信息:"Basic Info",版本号:"Version",启动时间:"Start Time",资源使用:"Resource Usage",流数量:"Stream Count",内存使用:"Memory Usage",使用:"Usage",硬盘使用:"Disk Usage",网络:"Network",接收速率:"Receive Rate",发送速率:"Send Rate",网卡:"Network Card",接收总:"Total Receive",发送总:"Total Send",配置:"Config",修改过的:"Modified",配置文件中的:"In Config File",最终合并后的:"Merged",保存:"Save",不保存:"Cancel",类型:"Type",订阅者:"Subscriber",开始时间:"Start Time",带宽:"Bandwidth",公网:"Public NetWork",局域网:"Local NetWork",日志文件列表:"Log Files",大小:"Size",按名称过滤:"Filter by Name",打开:"Open",下载:"Download"};function Mt(){const e=localStorage.getItem("language");if(e)return e;const t=navigator.language.toLowerCase(),n=[P.En,P.Zh];for(const o of n)if(t.indexOf(o)>-1)return o;return P.Zh}const O=De({legacy:!1,locale:Mt(),messages:{[P.Zh]:Tt,[P.En]:Nt}}),{navMode:Rt,navTheme:At,isMobile:Bt,headerSetting:Pt,showFooter:Ot,menuSetting:$t,multiTabsSetting:Lt,crumbsSetting:Dt,permissionMode:Ft,isPageAnimate:It,pageAnimateType:xt}=Et,I=H({id:"app-project-setting",state:()=>({navMode:Rt,navTheme:At,isMobile:Bt,headerSetting:Pt,showFooter:Ot,menuSetting:$t,multiTabsSetting:Lt,crumbsSetting:Dt,permissionMode:Ft,isPageAnimate:It,pageAnimateType:xt,language:O.global.locale.value,isSaas:location.hostname=="console.monibuca.com"||location.hostname=="127.0.0.1"||location.hostname=="localhost"}),getters:{getNavMode(){return this.navMode},getNavTheme(){return this.navTheme},getIsMobile(){return this.isMobile},getHeaderSetting(){return this.headerSetting},getShowFooter(){return this.showFooter},getMenuSetting(){return this.menuSetting},getMultiTabsSetting(){return this.multiTabsSetting},getCrumbsSetting(){return this.multiTabsSetting},getPermissionMode(){return this.permissionMode},getIsPageAnimate(){return this.isPageAnimate},getPageAnimateType(){return this.pageAnimateType}},actions:{setNavTheme(e){this.navTheme=e},setIsMobile(e){this.isMobile=e},setLanguage(e){this.language=e,O.global.locale.value=e,localStorage.setItem("language",e)}}});var M=(e=>(e.BASE_LOGIN="/login",e.BASE_LOGIN_NAME="root_login",e.BASE_REGISTER="/register",e.BASE_REGISTER_NAME="root_register",e.REDIRECT="/redirect",e.REDIRECT_NAME="Redirect",e.BASE_HOME="/instance/list",e.BASE_HOME_REDIRECT="/instance/list",e.ERROR_PAGE_NAME="ErrorPage",e))(M||{});const zt=[M.BASE_REGISTER_NAME,M.BASE_LOGIN_NAME];H({id:"app-tabs-view",state:()=>({tabsList:[]}),getters:{},actions:{initTabs(e){this.tabsList=e},addTabs(e){return zt.includes(e.name)?!1:(this.tabsList.some(n=>n.fullPath==e.fullPath)||this.tabsList.push(e),!0)},closeLeftTabs(e){const t=this.tabsList.findIndex(n=>n.fullPath==e.fullPath);this.tabsList.splice(0,t)},closeRightTabs(e){const t=this.tabsList.findIndex(n=>n.fullPath==e.fullPath);this.tabsList.splice(t+1)},closeOtherTabs(e){this.tabsList=this.tabsList.filter(t=>t.fullPath==e.fullPath)},closeCurrentTab(e){const t=this.tabsList.findIndex(n=>n.fullPath==e.fullPath);this.tabsList.splice(t,1)},closeAllTabs(){this.tabsList=[],localStorage.removeItem("TABS-ROUTES")}}});const{t:Ht}=O.global,L=Fe.create({timeout:1e7,withCredentials:!1}),Jo=!0,Yo="";L.interceptors.response.use(async e=>{const t=e.data;return t&&typeof(t==null?void 0:t.code)=="number"&&(t==null?void 0:t.code)!==0?(window.$message.error(Ht(t.msg)),Promise.reject(t.msg)):t.data||t},e=>Promise.reject(e));function jt(e){return L({url:"/api/user/register",method:"POST",data:e})}function Qo(e){return L({url:"/api/user/getverifycode",method:"POST",data:e})}function Ut(e){return L({url:"/api/user/login",method:"POST",data:e})}function Wt(){return L({url:"/api/user/logout",method:"POST"})}function es(e){return L({url:"/api/user/sendresetpwdmail",method:"POST",data:e})}function Gt(){return L({url:"/api/isTimeout"})}function ts(){return L({url:"/api/wx/info",method:"GET"})}function ns(e){return L({url:"/api/user/bindaccount",method:"POST",data:e})}const Kt=H({id:"app-user",state:()=>({username:"",mail:"",level:0,welcome:"",avatar:"",permissions:[]}),getters:{getAvatar(){return this.avatar},getNickname(){return this.username},getPermissions(){return this.permissions},getCurrentCamera(){return localStorage.getItem("currentCamera")||""}},actions:{setAvatar(e){this.avatar=e},setPermissions(e){this.permissions=e},setCurrentCamera(e){localStorage.setItem("currentCamera",e)},async register(e){try{const t=await jt(e);return Promise.resolve(t)}catch(t){return Promise.reject(t)}},async login(e){try{const t=await Ut(e);return this.username=t.data.nickname,this.level=t.data.level,Promise.resolve(t)}catch(t){return Promise.reject(t)}},async logout(){return await Wt(),this.setPermissions([]),Promise.resolve("")}}});function qt(e){const t=Ie();e.use(t)}const Zt="modulepreload",Xt=function(e,t){return new URL(e,t).href},fe={},m=function(t,n,o){if(!n||n.length===0)return t();const s=document.getElementsByTagName("link");return Promise.all(n.map(r=>{if(r=Xt(r,o),r in fe)return;fe[r]=!0;const a=r.endsWith(".css"),u=a?'[rel="stylesheet"]':"";if(!!o)for(let c=s.length-1;c>=0;c--){const d=s[c];if(d.href===r&&(!a||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${r}"]${u}`))return;const i=document.createElement("link");if(i.rel=a?"stylesheet":Zt,a||(i.as="script",i.crossOrigin=""),i.href=r,document.head.appendChild(i),a)return new Promise((c,d)=>{i.addEventListener("load",c),i.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${r}`)))})})).then(()=>t())},{t:ce}=O.global,W=M.REDIRECT_NAME,Jt=()=>m(()=>import("./404-5d728301.js"),["./404-5d728301.js","./vendor-ec30964e.js","./404-85aadbe0.css"],import.meta.url),Ne=()=>m(()=>Promise.resolve().then(()=>Po),void 0,import.meta.url),Yt={path:"/",name:"Root",redirect:M.BASE_HOME,meta:{title:"Root"}},Qt={path:"/login",name:"root_login",component:()=>m(()=>import("./index-fb6c1d63.js"),["./index-fb6c1d63.js","./vendor-ec30964e.js","./index-8cf1f035.css"],import.meta.url),meta:{title:ce("登录")}},en={path:"/wxlogin",name:"root_Wxlogin",component:()=>m(()=>import("./index-1015a1fe.js"),["./index-1015a1fe.js","./vendor-ec30964e.js","./index-deb00574.css"],import.meta.url),meta:{title:"微信扫码登录"}},tn={path:"/register",name:"root_register",component:()=>m(()=>import("./index-4d0940bd.js"),["./index-4d0940bd.js","./vendor-ec30964e.js","./index-ba7be148.css"],import.meta.url),meta:{title:ce("注册")}},nn={path:"/password",name:"root_password",component:()=>m(()=>import("./index-63e1a409.js"),["./index-63e1a409.js","./vendor-ec30964e.js","./index-01735392.css"],import.meta.url),meta:{title:ce("注册")}},_e={path:"/:path(.*)*",name:M.ERROR_PAGE_NAME,component:Ne,meta:{title:M.ERROR_PAGE_NAME,hideBreadcrumb:!0},children:[{path:"/:path(.*)*",name:"ErrorPageSon",component:Jt,meta:{title:M.ERROR_PAGE_NAME,hideBreadcrumb:!0}}]},on={path:"/redirect",name:W,component:Ne,meta:{title:W,hideBreadcrumb:!0},children:[{path:"/redirect/:path(.*)",name:W,component:()=>m(()=>import("./index-98f28a2d.js"),["./index-98f28a2d.js","./vendor-ec30964e.js"],import.meta.url),meta:{title:W,hideBreadcrumb:!0}}]},ae=[nn,tn,Qt,en,Yt,on],sn=M.BASE_LOGIN;async function rn(e,t,n,o){const s=pe();if(e.path==="/instance/"||e.path==="/instance"){n(M.BASE_HOME);return}if(t.path===sn&&e.name==="errorPage"){n(M.BASE_HOME);return}if(s.getIsDynamicAddedRoute){n();return}(await s.generateRoutes()).forEach(u=>{o.addRoute(u)}),o.getRoutes().findIndex(u=>u.name===_e.name)===-1&&o.addRoute(_e),s.setDynamicAddedRoute(!0),n({path:e.path,query:e.query})}function an(e){e.beforeEach(async(t,n,o)=>{var s;(s=window.$loadingBar)==null||s.start(),await rn(t,n,o,e)}),e.afterEach(t=>{var s,r;xe(t.meta.title),t.name=="stream-play"&&(t.meta.frameSrc=t.query.frameSrc);const n=t.params.id,o=t.params.streamPath;(s=window.$loadingBar)==null||s.finish(),e.options.routes.forEach(a=>{if(a.meta.hide){a.meta.hidden=!0;return}const u=a.name.startsWith("instance_stream_"),l=a.name.startsWith("instance")&&!u;a.meta.hidden=n?o?!u:!l:l||u}),(r=window.$loadingBar)==null||r.finish()})}const un=[],ln=Object.freeze(Object.defineProperty({__proto__:null,default:un},Symbol.toStringTag,{value:"Module"})),cn=[],dn=Object.freeze(Object.defineProperty({__proto__:null,default:cn},Symbol.toStringTag,{value:"Module"})),mn=Object.prototype.toString;function K(e,t){return mn.call(e)===`[object ${t}]`}function os(e){return K(e,"Function")}function ss(e){return K(e,"Number")}function rs(e){return K(e,"String")}function as(e){return K(e,"Boolean")}function is(e){return e&&Array.isArray(e)}const pn=typeof window>"u";function hn(e){return!e||!e.getBoundingClientRect?0:e.getBoundingClientRect()}function us(e){const t=document.documentElement,n=t.scrollLeft,o=t.scrollTop,s=t.clientLeft,r=t.clientTop,a=window.pageXOffset,u=window.pageYOffset,l=hn(e),{left:i,top:c,width:d,height:w}=l,V=(a||n)-(s||0),b=(u||o)-(r||0),N=i+a,p=c+u,f=N-V,T=p-b,D=window.document.documentElement.clientWidth,h=window.document.documentElement.clientHeight;return{left:f,top:T,right:D-d-f,bottom:h-w-T,rightIncludeBody:D-f,bottomIncludeBody:h-T}}function ve(e,t,n){e&&t&&n&&e.addEventListener(t,n,!1)}const gn=ze({func:void 0,bool:void 0,string:void 0,number:void 0,object:void 0,integer:void 0});gn.extend([{name:"style",getter:!0,type:[String,Object],default:void 0},{name:"VNodeChild",getter:!0,type:void 0}]);function ne(e,t){const n=parseInt(e,16)+t,o=n>255?255:n;return o.toString(16).length>1?o.toString(16):`0${o.toString(16)}`}function Vn(e,t){return e=e.indexOf("#")>=0?e.substring(1,e.length):e,t=Math.trunc(255*t/100),`#${ne(e.substring(0,2),t)}${ne(e.substring(2,4),t)}${ne(e.substring(4,6),t)}`}function v(e){return()=>Vue.h(naive.NIcon,null,{default:()=>Vue.h(e)})}function de(e){return e.filter(t=>{var n;return(((n=t.meta)==null?void 0:n.hidden)||!1)!=!0&&!["/:path(.*)*","/",M.REDIRECT,M.BASE_LOGIN].includes(t.path)})}function me(e){var t,n;return((t=e.meta)==null?void 0:t.alwaysShow)!=!0&&((n=e.children)==null?void 0:n.length)===1}function Me(e){return de(e).map(t=>{var r;const o=me(t)?t.children[0]:t,s={...o,...o.meta,label:(r=o.meta)==null?void 0:r.title,key:o.name};return o.children&&o.children.length>0&&(s.children=Me(o.children)),s})}function fn(e,t,n){const o=He(e),s=de(o);if(n==="header"){const r=[];return s.forEach(a=>{var c;const l=me(a)?a.children[0]:a;l.children=void 0;const i={...l,...l.meta,label:(c=l.meta)==null?void 0:c.title,key:l.name};r.push(i)}),r}else return Me(s.filter(r=>r.name===t))}function Re(e){return de(e).map(t=>{var r,a,u;const n=me(t),o=n?t.children[0]:t,s={...o,...o.meta,label:(r=o.meta)==null?void 0:r.title,key:o.name,icon:n?(a=t.meta)==null?void 0:a.icon:(u=o.meta)==null?void 0:u.icon};return o.children&&o.children.length>0&&(s.children=Re(o.children)),s})}const{t:E}=O.global,S="instance",_n=[{name:`${S}_dashboard`,path:"/instance/dashboard/:id",meta:{title:E("仪表盘"),icon:v(te)},component:()=>m(()=>import("./index-fee810d7.js"),["./index-fee810d7.js","./vendor-ec30964e.js","./index-c7d04dfb.js","./index-de28ae1e.js","./index-dfd97757.css"],import.meta.url)},{path:"/instance/config/:id",name:`${S}_config`,meta:{title:E("配置管理"),icon:v(ue)},component:()=>m(()=>import("./index-57bd3454.js"),["./index-57bd3454.js","./vendor-ec30964e.js","./index-c7d04dfb.js","./index-983a54b8.css"],import.meta.url)},{path:"/instance/tasktree/:id",name:`${S}_tasktree`,meta:{title:E("任务树"),icon:v(je)},component:()=>m(()=>import("./index-2f027361.js"),["./index-2f027361.js","./index-f89cf332.js","./vendor-ec30964e.js","./index-e987c583.css","./index-c7d04dfb.js"],import.meta.url)},{path:"/instance/tasktree/:id/history",name:`${S}_tasktree_history`,meta:{title:E("任务历史"),icon:v(he)},component:()=>m(()=>import("./history-4acb0e33.js"),["./history-4acb0e33.js","./TableAction-b6863a0a.js","./vendor-ec30964e.js","./TableAction-31bdf53c.css","./index-c7d04dfb.js","./installCanvasRenderer-cb1ba546.js","./install-40c3b04b.js"],import.meta.url)},{path:"/instance/stream/:id",name:`${S}_streamlist`,meta:{title:E("流列表"),icon:v(Se)},component:()=>m(()=>import("./index-44b6b587.js"),["./index-44b6b587.js","./vendor-ec30964e.js","./TableAction-b6863a0a.js","./TableAction-31bdf53c.css","./index-f89cf332.js","./index-e987c583.css","./index-c7d04dfb.js","./index-2325476e.css"],import.meta.url)},{path:"/instance/stream/detail/:id/:streamPath+",name:`${S}_stream_detail`,meta:{title:E("流详情"),icon:v(te)},component:()=>m(()=>import("./index-1d3d816b.js"),["./index-1d3d816b.js","./vendor-ec30964e.js","./index-c7d04dfb.js","./index-de28ae1e.js","./index-f89cf332.js","./index-e987c583.css","./index-28f01ea7.css"],import.meta.url)},{path:"/instance/track/snap/audio/:id/:streamPath+",name:`${S}_stream_track_snap_audio`,meta:{title:E("音频轨道快照"),icon:v(Ue)},component:()=>m(()=>import("./track-49cc82f4.js"),["./track-49cc82f4.js","./vendor-ec30964e.js","./TableAction-b6863a0a.js","./TableAction-31bdf53c.css","./index-f89cf332.js","./index-e987c583.css","./index-c7d04dfb.js","./installCanvasRenderer-cb1ba546.js","./install-c0cf116b.js","./install-40c3b04b.js","./track-b94feefc.css"],import.meta.url)},{path:"/instance/track/snap/video/:id/:streamPath+",name:`${S}_stream_track_snap_video`,meta:{title:E("视频轨道快照"),icon:v(We)},component:()=>m(()=>import("./track-49cc82f4.js"),["./track-49cc82f4.js","./vendor-ec30964e.js","./TableAction-b6863a0a.js","./TableAction-31bdf53c.css","./index-f89cf332.js","./index-e987c583.css","./index-c7d04dfb.js","./installCanvasRenderer-cb1ba546.js","./install-c0cf116b.js","./install-40c3b04b.js","./track-b94feefc.css"],import.meta.url)},{path:"/instance/subscribers/:id/:streamPath+",name:`${S}_stream_subscribers`,meta:{title:E("订阅者快照"),icon:v(Ge)},component:()=>m(()=>import("./subscribers-4dd1d1dd.js"),["./subscribers-4dd1d1dd.js","./vendor-ec30964e.js","./TableAction-b6863a0a.js","./TableAction-31bdf53c.css","./index-f89cf332.js","./index-e987c583.css","./index-c7d04dfb.js","./subscribers-393bc21a.css"],import.meta.url)},{path:"/instance/plugin/:id",name:`${S}_plugin_list`,meta:{title:E("插件列表"),icon:v(Ke)},component:()=>m(()=>import("./index-08d6e465.js"),["./index-08d6e465.js","./vendor-ec30964e.js","./TableAction-b6863a0a.js","./TableAction-31bdf53c.css","./index-c7d04dfb.js","./index-02040a65.css"],import.meta.url)},{path:"/instance/logs/:id",name:`${S}_logs`,meta:{title:E("日志分析"),icon:v(qe)},component:()=>m(()=>import("./index-c1d1d976.js"),["./index-c1d1d976.js","./index-c7d04dfb.js","./TableAction-b6863a0a.js","./vendor-ec30964e.js","./TableAction-31bdf53c.css"],import.meta.url)},{path:"/instance/logs/:id/detail/:logName",name:`${S}_log_detail`,meta:{title:E("日志详情"),hide:!0},component:()=>m(()=>import("./detail-f6bc31d7.js"),["./detail-f6bc31d7.js","./vendor-ec30964e.js"],import.meta.url)},{path:"/instance/monitor/:id",name:`${S}_monitor-search`,meta:{title:E("监控记录"),icon:v(he)},component:()=>m(()=>import("./index-5c9e290e.js"),["./index-5c9e290e.js","./check-09a8a6df.js","./index-c7d04dfb.js","./vendor-ec30964e.js","./index-01aec832.js","./index-8f977d17.css"],import.meta.url)},{path:"/instance/monitor/:id/detail/:stream",name:`${S}_monitor-detail`,meta:{title:E("监控记录详情"),hide:!0},component:()=>m(()=>import("./detail-b6aa2f6d.js"),["./detail-b6aa2f6d.js","./vendor-ec30964e.js","./index-c7d04dfb.js","./installCanvasRenderer-cb1ba546.js","./index-01aec832.js","./install-c0cf116b.js","./detail-2e3b75cf.css"],import.meta.url)},{path:"/instance/pprof/:id",name:`${S}_pprof-index`,meta:{title:E("性能分析"),icon:v(Ze)},component:()=>m(()=>import("./index-e45dbc1f.js"),["./index-e45dbc1f.js","./check-09a8a6df.js","./index-c7d04dfb.js","./vendor-ec30964e.js"],import.meta.url)},{path:"/instance/stress/:id",name:`${S}_stress-index`,meta:{title:E("压力测试"),icon:v(te)},component:()=>m(()=>import("./index-cb8a6381.js"),["./index-cb8a6381.js","./vendor-ec30964e.js","./index-c7d04dfb.js","./index-f89cf332.js","./index-e987c583.css"],import.meta.url)},{path:"/instance/address/:id",name:`${S}_address`,meta:{title:E("地址生成器"),icon:v(Xe)},component:()=>m(()=>import("./index-31a7c2a9.js"),["./index-31a7c2a9.js","./vendor-ec30964e.js","./index-c7d04dfb.js","./index-12bc2ddc.css"],import.meta.url)}],vn=Object.freeze(Object.defineProperty({__proto__:null,default:_n},Symbol.toStringTag,{value:"Module"})),{t:wn}=O.global,yn="list",Cn=[{path:"/instance/list",name:yn,meta:{title:wn("实例列表"),icon:v(Se)},component:()=>m(()=>import("./index-cacad849.js"),["./index-cacad849.js","./vendor-ec30964e.js","./TableAction-b6863a0a.js","./TableAction-31bdf53c.css","./index-f89cf332.js","./index-e987c583.css","./index-c7d04dfb.js"],import.meta.url)}],En=Object.freeze(Object.defineProperty({__proto__:null,default:Cn},Symbol.toStringTag,{value:"Module"})),{t:Sn}=O.global,bn=[{path:"/setting/account",name:"setting-account",meta:{title:Sn("设置"),icon:v(ue),sort:5},component:()=>m(()=>import("./account-1c311472.js"),["./account-1c311472.js","./vendor-ec30964e.js","./account-73e0bcec.css"],import.meta.url)}],kn=Object.freeze(Object.defineProperty({__proto__:null,default:bn},Symbol.toStringTag,{value:"Module"})),{t:oe}=O.global,Tn=[{path:"/test",name:"test",meta:{sort:2,isRoot:!0,activeMenu:"test_publish",icon:v(Je),title:oe("测试")},children:[{path:"publish",name:"test_publish",meta:{title:oe("推流测试"),activeMenu:"test_publish",icon:v(Ye)},component:()=>m(()=>import("./publish-b6395976.js"),["./publish-b6395976.js","./index-f89cf332.js","./vendor-ec30964e.js","./index-e987c583.css"],import.meta.url)},{path:"play",name:"test_play",meta:{title:oe("播放测试"),icon:v(Qe),activeMenu:"test_play"},component:()=>m(()=>import("./play-21cd083b.js"),["./play-21cd083b.js","./index-de28ae1e.js","./vendor-ec30964e.js"],import.meta.url)}]}],Nn=Object.freeze(Object.defineProperty({__proto__:null,default:Tn},Symbol.toStringTag,{value:"Module"})),q=[],we=Object.assign({"./routes/about.ts":ln,"./routes/frame.ts":dn,"./routes/instance-detail.ts":vn,"./routes/instance-list.ts":En,"./routes/setting.ts":kn,"./routes/test.ts":Nn});Object.keys(we).forEach(e=>{const t=we[e].default||{},n=Array.isArray(t)?[...t]:[t];q.push(...n)});function Mn(e,t){var n,o;return(((n=e.meta)==null?void 0:n.sort)||0)-(((o=t.meta)==null?void 0:o.sort)||0)}q.sort(Mn);const se=[...q];function Rn(){return[...ae,...q]}const re=et({history:tt(""),routes:Rn(),scrollBehavior:()=>({left:0,top:0})});async function An(e){e.use(re),an(re),await re.isReady()}const pe=H({id:"app-async-route",state:()=>({menus:[],routers:ae,addRouters:[],keepAliveComponents:[],isDynamicAddedRoute:!1}),getters:{getMenus(){return this.menus},getIsDynamicAddedRoute(){return this.isDynamicAddedRoute}},actions:{getRouters(){return Vue.toRaw(this.addRouters)},setDynamicAddedRoute(e){this.isDynamicAddedRoute=e},setRouters(e){this.addRouters=e,this.routers=ae.concat(e)},setMenus(e){this.menus=e},setKeepAliveComponents(e){this.keepAliveComponents=e},async generateRoutes(){return this.setRouters(se),this.setMenus(se),Vue.toRaw(se)}}});function Bn(){const e=le(),t=Vue.computed(()=>e.darkTheme),n=Vue.computed(()=>e.appTheme),o=Vue.computed(()=>e.appThemeList);return{getDarkTheme:t,getAppTheme:n,getAppThemeList:o}}function Z(){const e=I(),t=Vue.computed(()=>e.navMode),n=Vue.computed(()=>e.navTheme),o=Vue.computed(()=>e.isMobile),s=Vue.computed(()=>e.headerSetting),r=Vue.computed(()=>e.multiTabsSetting),a=Vue.computed(()=>e.menuSetting),u=Vue.computed(()=>e.crumbsSetting),l=Vue.computed(()=>e.permissionMode),i=Vue.computed(()=>e.showFooter),c=Vue.computed(()=>e.isPageAnimate),d=Vue.computed(()=>e.pageAnimateType);return{getNavMode:t,getNavTheme:n,getIsMobile:o,getHeaderSetting:s,getMultiTabsSetting:r,getMenuSetting:a,getCrumbsSetting:u,getPermissionMode:l,getShowFooter:i,getIsPageAnimate:c,getPageAnimateType:d,isSaas:Vue.computed(()=>e.isSaas)}}const Pn=Vue.defineComponent({name:"MainView",components:{},props:{notNeedKey:{type:Boolean,default:!1},animate:{type:Boolean,default:!0}},setup(){const{getIsPageAnimate:e,getPageAnimateType:t}=Z(),n=pe(),o=Vue.computed(()=>n.keepAliveComponents),s=Vue.computed(()=>Vue.unref(e)?Vue.unref(t):""),r=F(),a=Vue.computed(()=>r.path+Math.random());return{keepAliveComponents:o,getTransitionName:s,key:a}}});function On(e,t,n,o,s,r){const a=Vue.resolveComponent("RouterView");return Vue.openBlock(),Vue.createBlock(a,{key:e.key},{default:Vue.withCtx(({Component:u,route:l})=>[Vue.createVNode(Vue.Transition,{name:e.getTransitionName,mode:"out-in",appear:""},{default:Vue.withCtx(()=>[(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(u),{key:l.fullPath}))]),_:2},1032,["name"])]),_:1})}const $n=$(Pn,[["render",On]]),Ln=Vue.defineComponent({name:"Menu",components:{},props:{mode:{type:String,default:"vertical"},collapsed:{type:Boolean},location:{type:String,default:"left"}},emits:["update:collapsed"],setup(e,{emit:t}){const n=F(),o=be(),s=pe(),r=I(),a=Vue.ref([]),u=Vue.ref(n.name),l=Vue.ref(""),{getNavMode:i}=Z(),c=i,d=n.matched,w=d&&d.length?d.map(h=>h.name):[],V=Vue.reactive({openKeys:w}),b=Vue.computed(()=>["dark","header-dark"].includes(r.navTheme)),N=Vue.computed(()=>{const h=e.location;return h==="left"||h==="header"&&Vue.unref(c)==="horizontal"?Vue.unref(u):Vue.unref(l)});Vue.watch(()=>r.menuSetting.mixMenu,()=>{p(),e.collapsed&&t("update:collapsed",!e.collapsed)}),Vue.watch(()=>n.fullPath,()=>{var k;p();const h=n.matched;V.openKeys=h.map(A=>A.name);const C=((k=n.meta)==null?void 0:k.activeMenu)||"";u.value=C||n.name});function p(){var h;if(!r.menuSetting.mixMenu)a.value=Re(s.getMenus);else{const C=n.matched[0].name||"";a.value=fn(s.getMenus,C,e.location);const k=(h=n==null?void 0:n.matched[0].meta)==null?void 0:h.activeMenu;l.value=k||C||""}}function f(h){o.push({name:h,query:{id:n.query.id}}),t("clickMenuItem",h)}function T(h){if(!h)return;const C=h.find(A=>V.openKeys.indexOf(A)===-1),k=D(C);V.openKeys=k?C?[C]:[]:h}function D(h){if(!h)return!1;const C=[];for(const{children:k,key:A}of Vue.unref(a))k&&k.length&&C.push(A);return C.includes(h)}return Vue.onMounted(()=>{p()}),{...Vue.toRefs(V),inverted:b,menus:a,selectedKeys:u,headerMenuSelectKey:l,getSelectedKeys:N,clickMenuItem:f,menuExpanded:T}}});function Dn(e,t,n,o,s,r){const a=Vue.resolveComponent("NMenu");return Vue.openBlock(),Vue.createBlock(a,{options:e.menus,inverted:e.inverted,mode:e.mode,collapsed:e.collapsed,"collapsed-width":64,"collapsed-icon-size":20,indent:24,"expanded-keys":e.openKeys,value:e.getSelectedKeys,"onUpdate:value":e.clickMenuItem,"onUpdate:expandedKeys":e.menuExpanded},null,8,["options","inverted","mode","collapsed","expanded-keys","value","onUpdate:value","onUpdate:expandedKeys"])}const ie=$(Ln,[["render",Dn]]),Fn={TranslationOutlined:nt,SettingOutlined:ue,LockOutlined:ot,GithubOutlined:st,SearchOutlined:rt,MenuFoldOutlined:at,MenuUnfoldOutlined:it,FullscreenOutlined:ut,FullscreenExitOutlined:lt,PoweroffOutlined:ct,ReloadOutlined:dt,LogoutOutlined:mt,UserOutlined:pt,CheckOutlined:ke},ye=""+new URL("nav-theme-dark-be6f2a3d.svg",import.meta.url).href,In=""+new URL("nav-horizontal-f3cbecb9.svg",import.meta.url).href,xn=""+new URL("nav-theme-light-43fdcab2.svg",import.meta.url).href;const zn=Vue.defineComponent({name:"ProjectSetting",components:{CheckOutlined:ke,Moon:ht,SunnySharp:gt},props:{title:{type:String,default:"主题配置"},width:{type:Number,default:280}},setup(e){const t=I(),n=le(),o=Vue.reactive({width:e.width,title:e.title,isDrawer:!1,placement:"right",alertText:"该功能主要实时预览各种布局效果,更多完整配置在 projectSetting.ts 中设置,建议在生产环境关闭该布局预览功能。",appThemeList:n.appThemeList});Vue.watch(()=>n.darkTheme,i=>{t.navTheme=i?"header-dark":"dark"});function s(){o.isDrawer=!0}function r(){o.isDrawer=!1}function a(i){t.navTheme=i,t.navMode==="horizontal"&&["light"].includes(i)&&(t.navTheme="dark")}function u(i){n.appTheme=i}function l(i){t.navMode=i,t.menuSetting.mixMenu=!1}return{...Vue.toRefs(o),settingStore:t,designStore:n,togNavTheme:a,togNavMode:l,togTheme:u,darkTheme:naive.darkTheme,openDrawer:s,closeDrawer:r}}}),X=e=>(Vue.pushScopeId("data-v-1dfb9bbc"),e=e(),Vue.popScopeId(),e),Hn={class:"drawer"},jn=Vue.createTextVNode("主题"),Un={class:"justify-center drawer-setting-item dark-switch"},Wn=Vue.createTextVNode("系统主题"),Gn={class:"drawer-setting-item align-items-top"},Kn=["onClick"],qn=Vue.createTextVNode("导航栏模式"),Zn={class:"drawer-setting-item align-items-top"},Xn={class:"drawer-setting-item-style align-items-top"},Jn=X(()=>Vue.createElementVNode("span",null,"左侧菜单模式",-1)),Yn={class:"drawer-setting-item-style"},Qn=X(()=>Vue.createElementVNode("span",null,"顶部菜单模式",-1)),eo=Vue.createTextVNode("导航栏风格"),to={class:"drawer-setting-item align-items-top"},no={class:"drawer-setting-item-style align-items-top"},oo=X(()=>Vue.createElementVNode("span",null,"暗色侧边栏",-1)),so={class:"drawer-setting-item-style"},ro=X(()=>Vue.createElementVNode("span",null,"白色侧边栏",-1));function ao(e,t,n,o,s,r){const a=Vue.resolveComponent("n-divider"),u=Vue.resolveComponent("SunnySharp"),l=Vue.resolveComponent("n-icon"),i=Vue.resolveComponent("Moon"),c=Vue.resolveComponent("n-switch"),d=Vue.resolveComponent("n-tooltip"),w=Vue.resolveComponent("CheckOutlined"),V=Vue.resolveComponent("n-badge"),b=Vue.resolveComponent("n-drawer-content"),N=Vue.resolveComponent("n-drawer");return Vue.openBlock(),Vue.createBlock(N,{show:e.isDrawer,"onUpdate:show":t[5]||(t[5]=p=>e.isDrawer=p),width:e.width,placement:e.placement},{default:Vue.withCtx(()=>[Vue.createVNode(b,{title:e.title,"native-scrollbar":!1},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",Hn,[Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[jn]),_:1}),Vue.createElementVNode("div",Un,[Vue.createVNode(d,{placement:"bottom"},{trigger:Vue.withCtx(()=>[Vue.createVNode(c,{value:e.designStore.darkTheme,"onUpdate:value":t[0]||(t[0]=p=>e.designStore.darkTheme=p),class:"dark-theme-switch"},{checked:Vue.withCtx(()=>[Vue.createVNode(l,{size:"14",color:"#ffd93b"},{default:Vue.withCtx(()=>[Vue.createVNode(u)]),_:1})]),unchecked:Vue.withCtx(()=>[Vue.createVNode(l,{size:"14",color:"#ffd93b"},{default:Vue.withCtx(()=>[Vue.createVNode(i)]),_:1})]),_:1},8,["value"])]),default:Vue.withCtx(()=>[Vue.createElementVNode("span",null,Vue.toDisplayString(e.designStore.darkTheme?"深":"浅")+"色主题",1)]),_:1})]),Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[Wn]),_:1}),Vue.createElementVNode("div",Gn,[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.appThemeList,(p,f)=>(Vue.openBlock(),Vue.createElementBlock("span",{class:"theme-item",key:f,style:Vue.normalizeStyle({"background-color":p}),onClick:T=>e.togTheme(p)},[p===e.designStore.appTheme?(Vue.openBlock(),Vue.createBlock(l,{key:0,size:"12"},{default:Vue.withCtx(()=>[Vue.createVNode(w)]),_:1})):Vue.createCommentVNode("",!0)],12,Kn))),128))]),Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[qn]),_:1}),Vue.createElementVNode("div",Zn,[Vue.createElementVNode("div",Xn,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:ye,onClick:t[1]||(t[1]=p=>e.togNavMode("vertical")),alt:"左侧菜单模式"})]),default:Vue.withCtx(()=>[Jn]),_:1}),Vue.withDirectives(Vue.createVNode(V,{dot:"",color:"#19be6b"},null,512),[[Vue.vShow,e.settingStore.navMode==="vertical"]])]),Vue.createElementVNode("div",Yn,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:In,alt:"顶部菜单模式",onClick:t[2]||(t[2]=p=>e.togNavMode("horizontal"))})]),default:Vue.withCtx(()=>[Qn]),_:1}),Vue.withDirectives(Vue.createVNode(V,{dot:"",color:"#19be6b"},null,512),[[Vue.vShow,e.settingStore.navMode==="horizontal"]])])]),Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[eo]),_:1}),Vue.createElementVNode("div",to,[Vue.createElementVNode("div",no,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:ye,alt:"暗色侧边栏",onClick:t[3]||(t[3]=p=>e.togNavTheme("dark"))})]),default:Vue.withCtx(()=>[oo]),_:1}),e.settingStore.navTheme==="dark"?(Vue.openBlock(),Vue.createBlock(V,{key:0,dot:"",color:"#19be6b"})):Vue.createCommentVNode("",!0)]),Vue.createElementVNode("div",so,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:xn,alt:"白色侧边栏",onClick:t[4]||(t[4]=p=>e.togNavTheme("light"))})]),default:Vue.withCtx(()=>[ro]),_:1}),e.settingStore.navTheme==="light"?(Vue.openBlock(),Vue.createBlock(V,{key:0,dot:"",color:"#19be6b"})):Vue.createCommentVNode("",!0)])])])]),_:1},8,["title"])]),_:1},8,["show","width","placement"])}const io=$(zn,[["render",ao],["__scopeId","data-v-1dfb9bbc"]]),uo=""+new URL("logo-4a45ef13.png",import.meta.url).href;const lo="English",co="中文",mo=Vue.defineComponent({name:"PageHeader",components:{...Fn,NDialogProvider:naive.NDialogProvider,ProjectSetting:io,AsideMenu:ie},props:{collapsed:{type:Boolean},inverted:{type:Boolean}},emits:["update:collapsed"],setup(e,{emit:t}){const n=I(),o=Kt(),{language:s}=Te(n),r=[{label:lo,value:P.En},{label:co,value:P.Zh}],{isSaas:a,getNavMode:u,getNavTheme:l,getHeaderSetting:i,getMenuSetting:c,getCrumbsSetting:d}=Z(),w=Vue.ref(),V=Vue.ref(0),b=Vue.ref(!1),N=Vue.ref(!1),p=Vue.ref(!1),f=F();a.value||Gt().then(_=>{b.value=!0,V.value=Number(_.data.remainseconds)*1e3,V.value<5*60*1e3?N.value=!0:N.value=!1}).catch(_=>{console.log(_),p.value=!0});const T=Vue.reactive({username:o.username||o.mail,level:o.level,fullscreenIcon:"FullscreenOutlined",navMode:u,navTheme:l,headerSetting:i,crumbsSetting:d}),D=Vue.computed(()=>{const _=Vue.unref(l);return["light","header-dark"].includes(_)?e.inverted:!e.inverted}),h=Vue.computed(()=>Vue.unref(c).mixMenu),C=()=>{window.location.href="/#/instance/list",window.location.reload()},k=Vue.computed(()=>{const{collapsed:_}=e,{minMenuWidth:B,menuWidth:z}=Vue.unref(c);return{left:_?`${B}px`:`${z}px`,width:`calc(100% - ${_?`${B}px`:`${z}px`})`}}),A=Vue.computed(()=>"header"),J=()=>{console.log(888888),p.value=!0},y=be(),g=F();console.log("🚀 ~ setup ~ route:",g.meta);const x=_=>_.map(B=>{const z={...B,label:B.meta.title,key:B.name,disabled:B.path==="/"};return B.children&&B.children.length>0&&(z.children=x(B.children)),z}),Y=Vue.computed(()=>{const _=x(g.matched);return console.log(1111,_),x(g.matched)}),Q=_=>{console.log("🚀 ~ dropdownSelect ~ key:",_),y.push(_)},j=Vue.ref(g.name=="instance_list");Vue.watch(()=>f.fullPath,()=>{j.value=f.name=="instance_list"});const ee=()=>{y.push({path:"/redirect"+Vue.unref(g).fullPath})},U=()=>T.fullscreenIcon=document.fullscreenElement!==null?"FullscreenExitOutlined":"FullscreenOutlined";document.addEventListener("fullscreenchange",U);const R=()=>{document.fullscreenElement?document.exitFullscreen&&document.exitFullscreen():document.documentElement.requestFullscreen()},Pe=[{icon:"GithubOutlined",tips:"github",eventObject:{click:()=>window.open("https://github.com/monibuca")}}];function Oe(){const{openDrawer:_}=w.value;_()}function $e(_){t("update:collapsed",!_)}function Le(_){n.setLanguage(_)}return{handleUpdateValue:Le,language:s,langOptions:r,isSaas:a,isEnd:p,isHigh:N,setTip:J,active:b,duration:V,...Vue.toRefs(T),iconList:Pe,toggleFullScreen:R,route:g,dropdownSelect:Q,userSetting(){y.push({name:"Setting"})},getChangeStyle:k,breadcrumbList:Y,reloadPage:ee,drawerSetting:w,openSetting:Oe,getInverted:D,getMenuLocation:A,mixMenu:h,switchCollapse:$e,isHome:j,goBack:C}}}),po=e=>(Vue.pushScopeId("data-v-4670b0f4"),e=e(),Vue.popScopeId(),e),ho={class:"layout-header"},go={key:0,class:"layout-header-left"},Vo={key:0,class:"logo"},fo=po(()=>Vue.createElementVNode("img",{src:uo,alt:""},null,-1)),_o={class:"title"},vo={key:1,class:"layout-header-left"},wo={class:"link-text"},yo={class:"link-text"},Co={class:"link-text"},Eo={class:"layout-header-right"},So={key:0,class:"c-wrap"},bo={key:1},ko={key:0,class:"c-wrap"},To={key:1,class:"c-wrap"},No=Vue.createTextVNode(" 体验版倒计时: "),Mo={class:"lang-select"};function Ro(e,t,n,o,s,r){const a=Vue.resolveComponent("AsideMenu"),u=Vue.resolveComponent("MenuUnfoldOutlined"),l=Vue.resolveComponent("n-icon"),i=Vue.resolveComponent("MenuFoldOutlined"),c=Vue.resolveComponent("n-breadcrumb-item"),d=Vue.resolveComponent("n-breadcrumb"),w=Vue.resolveComponent("n-button"),V=Vue.resolveComponent("n-countdown"),b=Vue.resolveComponent("TranslationOutlined"),N=Vue.resolveComponent("n-popselect"),p=Vue.resolveComponent("ProjectSetting");return Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,[Vue.createElementVNode("div",ho,[e.navMode==="horizontal"||e.navMode==="horizontal-mix"&&e.mixMenu?(Vue.openBlock(),Vue.createElementBlock("div",go,[e.navMode==="horizontal"?(Vue.openBlock(),Vue.createElementBlock("div",Vo,[fo,Vue.withDirectives(Vue.createElementVNode("h2",_o,"Monibuca",512),[[Vue.vShow,!e.collapsed]])])):Vue.createCommentVNode("",!0),Vue.createVNode(a,{collapsed:e.collapsed,"onUpdate:collapsed":t[0]||(t[0]=f=>e.collapsed=f),location:e.getMenuLocation,"onUpdate:location":t[1]||(t[1]=f=>e.getMenuLocation=f),inverted:e.getInverted,mode:"horizontal"},null,8,["collapsed","location","inverted"])])):(Vue.openBlock(),Vue.createElementBlock("div",vo,[Vue.createElementVNode("div",{class:"ml-1 layout-header-trigger layout-header-trigger-min",onClick:t[2]||(t[2]=f=>e.switchCollapse(e.collapsed))},[e.collapsed?(Vue.openBlock(),Vue.createBlock(l,{key:0,size:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(u)]),_:1})):(Vue.openBlock(),Vue.createBlock(l,{key:1,size:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(i)]),_:1}))]),e.crumbsSetting.show?(Vue.openBlock(),Vue.createBlock(d,{key:0},{default:Vue.withCtx(()=>[e.route.params.id?(Vue.openBlock(),Vue.createBlock(c,{key:0,onClick:t[3]||(t[3]=f=>e.dropdownSelect("/instance/list"))},{default:Vue.withCtx(()=>[Vue.createElementVNode("span",wo,Vue.toDisplayString(e.$t("实例列表")),1)]),_:1})):Vue.createCommentVNode("",!0),e.route.params.id&&e.route.params.streamPath?(Vue.openBlock(),Vue.createBlock(c,{key:1,onClick:t[4]||(t[4]=f=>e.dropdownSelect({name:"instance_streamlist",params:e.route.params}))},{default:Vue.withCtx(()=>[Vue.createElementVNode("span",yo,Vue.toDisplayString(e.$t("流列表")),1)]),_:1})):Vue.createCommentVNode("",!0),Vue.createVNode(c,null,{default:Vue.withCtx(()=>[Vue.createElementVNode("span",Co,Vue.toDisplayString(e.route.meta.title),1)]),_:1})]),_:1})):Vue.createCommentVNode("",!0)])),Vue.createElementVNode("div",Eo,[e.isSaas?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",So,[e.isHome?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(w,{key:0,type:"primary",onClick:e.goBack},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("返回首页")),1)]),_:1},8,["onClick"]))])),e.isSaas?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",bo,[e.isEnd?(Vue.openBlock(),Vue.createElementBlock("div",ko,"体验版时间已用尽,请联系官方人员")):(Vue.openBlock(),Vue.createElementBlock("div",To,[No,Vue.createElementVNode("div",{class:Vue.normalizeClass([e.isHigh?"count-down":""])},[Vue.createVNode(V,{duration:e.duration,"on-finish":e.setTip,active:e.active},null,8,["duration","on-finish","active"])],2)]))])),Vue.createElementVNode("div",Mo,[Vue.createVNode(N,{value:e.language,"onUpdate:value":[t[5]||(t[5]=f=>e.language=f),e.handleUpdateValue],options:e.langOptions,trigger:"click"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{size:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(b)]),_:1})]),_:1},8,["value","options","onUpdate:value"])])])]),Vue.createVNode(p,{ref:"drawerSetting"},null,512)],64)}const Ao=$(mo,[["render",Ro],["__scopeId","data-v-4670b0f4"]]);const Bo=Vue.defineComponent({setup(e){const{getDarkTheme:t}=Bn(),{getNavMode:n,getNavTheme:o,getHeaderSetting:s,getMenuSetting:r,getMultiTabsSetting:a}=Z(),u=I(),l=n,i=Vue.ref(!1),{mobileWidth:c,menuWidth:d}=Vue.unref(r),w=Vue.computed({get:()=>u.getIsMobile,set:y=>u.setIsMobile(y)}),V=Vue.computed(()=>{const{fixed:y}=Vue.unref(s);return y?"absolute":"static"}),b=Vue.computed(()=>{const y=u.menuSetting.mixMenu,g=F();return Vue.unref(l)!="horizontal-mix"?!0:!(Vue.unref(l)==="horizontal-mix"&&y&&g.meta.isRoot)}),N=Vue.computed(()=>{const{fixed:y}=Vue.unref(s);return y?"absolute":"static"}),p=Vue.computed(()=>Vue.unref(a).show),f=Vue.computed(()=>Vue.unref(a).fixed),T=Vue.computed(()=>["dark","header-dark"].includes(Vue.unref(o))),D=Vue.computed(()=>{const y=Vue.unref(o);return["light","header-dark"].includes(y)?Vue.unref(T):!Vue.unref(T)}),h=Vue.computed(()=>{const{minMenuWidth:y,menuWidth:g}=Vue.unref(r);return i.value?y:g}),C=Vue.computed(()=>"left"),k=Vue.computed({get:()=>w.value&&i.value,set:y=>i.value=y}),A=()=>{document.body.clientWidth<=c?w.value=!0:w.value=!1,i.value=!1},J=()=>{document.body.clientWidth<=950?i.value=!0:i.value=!1,A()};return Vue.onMounted(()=>{A(),window.addEventListener("resize",J),window.$loading=naive.useLoadingBar(),window.$loading.finish()}),(y,g)=>{const x=Vue.resolveComponent("n-layout-sider"),Y=Vue.resolveComponent("n-drawer"),Q=Vue.resolveComponent("n-layout-header"),j=Vue.resolveComponent("n-layout-content"),ee=Vue.resolveComponent("n-back-top"),U=Vue.resolveComponent("n-layout");return Vue.openBlock(),Vue.createBlock(U,{class:"layout",position:Vue.unref(N),"has-sider":""},{default:Vue.withCtx(()=>[!Vue.unref(w)&&Vue.unref(b)&&(Vue.unref(l)==="vertical"||Vue.unref(l)==="horizontal-mix")?(Vue.openBlock(),Vue.createBlock(x,{key:0,onCollapse:g[2]||(g[2]=R=>i.value=!0),position:Vue.unref(N),onExpand:g[3]||(g[3]=R=>i.value=!1),collapsed:i.value,"collapse-mode":"width","collapsed-width":64,width:Vue.unref(h),"native-scrollbar":!1,inverted:Vue.unref(T),class:"layout-sider"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Ve),{collapsed:i.value},null,8,["collapsed"]),Vue.createVNode(Vue.unref(ie),{collapsed:i.value,"onUpdate:collapsed":g[0]||(g[0]=R=>i.value=R),location:Vue.unref(C),"onUpdate:location":g[1]||(g[1]=R=>Vue.isRef(C)?C.value=R:null)},null,8,["collapsed","location"])]),_:1},8,["position","collapsed","width","inverted"])):Vue.createCommentVNode("",!0),Vue.createVNode(Y,{show:Vue.unref(k),"onUpdate:show":g[5]||(g[5]=R=>Vue.isRef(k)?k.value=R:null),width:Vue.unref(d),placement:"left",class:"layout-side-drawer"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Ve),{collapsed:i.value},null,8,["collapsed"]),Vue.createVNode(Vue.unref(ie),{onClickMenuItem:g[4]||(g[4]=R=>i.value=!1)})]),_:1},8,["show","width"]),Vue.createVNode(U,{inverted:Vue.unref(T)},{default:Vue.withCtx(()=>[Vue.createVNode(Q,{inverted:Vue.unref(D),position:Vue.unref(V)},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Ao),{collapsed:i.value,"onUpdate:collapsed":g[6]||(g[6]=R=>i.value=R),inverted:Vue.unref(T)},null,8,["collapsed","inverted"])]),_:1},8,["inverted","position"]),Vue.createVNode(j,{class:Vue.normalizeClass(["layout-content",{"layout-default-background":Vue.unref(t)===!1}])},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",{class:Vue.normalizeClass(["layout-content-main",{"layout-content-main-fix":Vue.unref(f),"fluid-header":Vue.unref(V)==="static"}])},[Vue.createElementVNode("div",{class:Vue.normalizeClass(["main-view",{"main-view-fix":Vue.unref(f),noMultiTabs:!Vue.unref(p),"mt-3":!Vue.unref(p)}])},[Vue.createVNode(Vue.unref($n))],2)],2)]),_:1},8,["class"]),Vue.createVNode(ee,{right:100})]),_:1},8,["inverted"])]),_:1},8,["position"])}}}),Ae=$(Bo,[["__scopeId","data-v-75fb7155"]]),Po=Object.freeze(Object.defineProperty({__proto__:null,default:Ae},Symbol.toStringTag,{value:"Module"})),Oo={name:"MessageContent",setup(){window.$message=naive.useMessage()}};function $o(e,t,n,o,s,r){return null}const Lo=$(Oo,[["render",$o]]),Do={name:"DialogContent",setup(){window.$dialog=naive.useDialog()}};function Fo(e,t,n,o,s,r){return null}const Io=$(Do,[["render",Fo]]),xo=Vue.defineComponent({name:"Application",components:{NDialogProvider:naive.NDialogProvider,NNotificationProvider:naive.NNotificationProvider,NMessageProvider:naive.NMessageProvider,NLoadingBarProvider:naive.NLoadingBarProvider,MessageContent:Lo,DialogContent:Io},setup(){return{}}});function zo(e,t,n,o,s,r){const a=Vue.resolveComponent("DialogContent"),u=Vue.resolveComponent("MessageContent"),l=Vue.resolveComponent("n-message-provider"),i=Vue.resolveComponent("n-notification-provider"),c=Vue.resolveComponent("n-dialog-provider"),d=Vue.resolveComponent("n-loading-bar-provider");return Vue.openBlock(),Vue.createBlock(d,null,{default:Vue.withCtx(()=>[Vue.createVNode(c,null,{default:Vue.withCtx(()=>[Vue.createVNode(a),Vue.createVNode(i,null,{default:Vue.withCtx(()=>[Vue.createVNode(l,null,{default:Vue.withCtx(()=>[Vue.createVNode(u),Vue.renderSlot(e.$slots,"default",{slot:"default"})]),_:3})]),_:3})]),_:3})]),_:3})}const Be=$(xo,[["render",zo]]);const Ho=Vue.defineComponent({setup(e){const t=F();ge.registerLanguage("yaml",Vt);const n=le(),o=I(),{language:s}=Te(o),r=Vue.computed(()=>s.value===P.Zh?naive.zhCN:naive.enUS),a=Vue.computed(()=>s.value===P.Zh?naive.dateZhCN:naive.dateEnUS),u=Vue.computed(()=>{const i=n.appTheme,c=Vn(n.appTheme,6);return{common:{primaryColor:i,primaryColorHover:c,primaryColorPressed:c},LoadingBar:{colorLoading:i}}});Vue.onMounted(async()=>{});const l=Vue.computed(()=>n.darkTheme?naive.darkTheme:void 0);return(i,c)=>{const d=Vue.resolveComponent("RouterView"),w=Vue.resolveComponent("NConfigProvider");return Vue.openBlock(),Vue.createBlock(w,{locale:Vue.unref(r),theme:Vue.unref(l),"theme-overrides":Vue.unref(u),hljs:Vue.unref(ge),"date-locale":Vue.unref(a)},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Be),null,{default:Vue.withCtx(()=>[Vue.unref(t).name.startsWith("root")?(Vue.openBlock(),Vue.createBlock(d,{key:0})):(Vue.openBlock(),Vue.createBlock(Ae,{key:1}))]),_:1})]),_:1},8,["locale","theme","theme-overrides","hljs","date-locale"])}}}),G=new Map;let Ce;pn||(ve(document,"mousedown",e=>Ce=e),ve(document,"mouseup",e=>{for(const{documentHandler:t}of G.values())t(e,Ce)}));function Ee(e,t){let n=[];return Array.isArray(t.arg)?n=t.arg:n.push(t.arg),function(o,s){const r=t.instance.popperRef,a=o.target,u=s.target,l=!t||!t.instance,i=!a||!u,c=e.contains(a)||e.contains(u),d=e===a,w=n.length&&n.some(b=>b==null?void 0:b.contains(a))||n.length&&n.includes(u),V=r&&(r.contains(a)||r.contains(u));l||i||c||d||w||V||t.value()}}const jo={beforeMount(e,t){G.set(e,{documentHandler:Ee(e,t),bindingFn:t.value})},updated(e,t){G.set(e,{documentHandler:Ee(e,t),bindingFn:t.value})},unmounted(e){G.delete(e)}};function Uo(e){e.directive("click-out-side",jo)}const Wo=["width","height"],Go=["xlink:href","fill"],Ko={props:{prefix:{type:String,default:"icon"},name:{type:String,required:!0},color:{type:String,default:"#333"},width:{type:String,default:"auto"},height:{type:String,default:"auto"}},setup(e){const t=e,n=Vue.computed(()=>`#${t.prefix}-${t.name}`);return(o,s)=>(Vue.openBlock(),Vue.createElementBlock("svg",{"aria-hidden":"true",class:"svg-icon",width:t.width,height:t.height},[Vue.createElementVNode("use",{"xlink:href":Vue.unref(n),fill:t.color},null,8,Go)],8,Wo))}};function qo(e){e.use(naive)}if(typeof window<"u"){let e=function(){var t=document.body,n=document.getElementById("__svg__icons__dom__");n||(n=document.createElementNS("http://www.w3.org/2000/svg","svg"),n.style.position="absolute",n.style.width="0",n.style.height="0",n.id="__svg__icons__dom__",n.setAttribute("xmlns","http://www.w3.org/2000/svg"),n.setAttribute("xmlns:link","http://www.w3.org/1999/xlink")),n.innerHTML='',t.insertBefore(n,t.lastChild)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e):e()}async function Zo(){const e=Vue.createApp(Be),t=Vue.createApp(Ho);t.use(O),qt(t),qo(t),Uo(t),e.mount("#appProvider",!0),await An(t),t.component("svg-icon",Ko),t.mount("#app",!0)}Zo();export{jo as C,M as P,$ as _,I as a,uo as b,re as c,Z as d,Bn as e,ss as f,Qo as g,as as h,O as i,rs as j,is as k,Jo as l,os as m,us as n,Yo as o,gn as p,ts as q,es as r,L as s,ns as t,Kt as u}; +import{d as H,c as De,a as Fe,b as Ie,u as xe,z as ze,e as He,D as te,S as ue,P as je,H as he,U as Se,A as Ue,V as We,f as Ge,g as Ke,M as qe,F as Ze,B as Xe,h as Je,i as Ye,E as Qe,j as et,k as tt,l as F,m as be,T as nt,L as ot,G as st,n as rt,o as at,p as it,q as ut,r as lt,s as ct,R as dt,t as mt,v as pt,C as ke,w as ht,x as gt,y as Te,I as ge,J as Vt}from"./vendor-ec30964e.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))o(s);new MutationObserver(s=>{for(const r of s)if(r.type==="childList")for(const a of r.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&o(a)}).observe(document,{childList:!0,subtree:!0});function n(s){const r={};return s.integrity&&(r.integrity=s.integrity),s.referrerPolicy&&(r.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?r.credentials="include":s.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function o(s){if(s.ep)return;s.ep=!0;const r=n(s);fetch(s.href,r)}})();const $=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n},ft={name:"Index",props:{collapsed:{type:Boolean}}},_t={class:"logo"},vt={class:"title"};function wt(e,t,n,o,s,r){const a=Vue.resolveComponent("svg-icon");return Vue.openBlock(),Vue.createElementBlock("div",_t,[Vue.createVNode(a,{name:"logo2",height:"32px",width:"64px",class:Vue.normalizeClass(["icon",{"mr-2":!n.collapsed}])},null,8,["class"]),Vue.withDirectives(Vue.createElementVNode("h2",vt,"Monibuca",512),[[Vue.vShow,!n.collapsed]])])}const Ve=$(ft,[["render",wt],["__scopeId","data-v-5cb6b15e"]]),yt=["#2d8cf0","#0960bd","#0084f4","#009688","#536dfe","#ff5c93","#ee4f12","#0096c7","#9c27b0","#ff9800","#FF3D68","#00C1D4","#71EFA3","#171010","#78DEC7","#1768AC","#FB9300","#FC5404"],Ct={darkTheme:!1,appTheme:"#5a00ff",appThemeList:yt},Et={navMode:"vertical",navTheme:"dark",isMobile:!1,headerSetting:{bgColor:"#fff",fixed:!0,isReload:!0},showFooter:!0,multiTabsSetting:{bgColor:"#fff",show:!0,fixed:!0},menuSetting:{minMenuWidth:64,menuWidth:200,fixed:!0,mixMenu:!1,mobileWidth:800,collapsed:!1},crumbsSetting:{show:!0,showIcon:!1},permissionMode:"FIXED",isPageAnimate:!0,pageAnimateType:"zoom-fade"},{darkTheme:St,appTheme:bt,appThemeList:kt}=Ct,le=H({id:"app-design-setting",state:()=>({darkTheme:St,appTheme:bt,appThemeList:kt}),getters:{getDarkTheme(){return this.darkTheme},getAppTheme(){return this.appTheme},getAppThemeList(){return this.appThemeList}},actions:{}});var P=(e=>(e.En="en",e.Zh="zh-Hans",e))(P||{});const Tt={},Nt={主题配置:"Theme Config",返回首页:"Back to Home",实例管理平台:"Instance Management Platform",用户未登录:"User not logged in",登录成功:"Login Success",请输入账号:"Please enter account",请输入邮箱:"Please enter email",请输入邮箱验证码:"Please enter email verification code",请输入密码:"Please enter password",注册账号:"Register Account",忘记密码:"Forget Password",修改密码:"Change Password",重置密码:"Reset Password",新密码:"New Password",旧密码:"Old Password",请输入旧密码:"Please enter old password",请输入新密码:"Please enter new password","修改密码成功,下次登录请使用新密码!":"Change password successfully, please use the new password next time you log in!","验证失败,请填写完整信息":"Verification failed, please fill in the complete information","验证码发送成功,请注意查收":"Verification code sent successfully, please check it carefully","点击重置密码后,请到绑定邮箱中查看重置密码,并点击链接进行激活":"After clicking the reset password, please check the reset password in the bound email, and click the link to activate","重置密码失败,请稍后再试":"Reset password failed, please try again later","重置密码成功,请登录邮箱查看重置密码,并进行激活":"Reset password successfully, please log in to the email to check the reset password, and activate it",发送邮箱验证码:"Send Email Verification Code",登录:"Login",退出登录:"Logout",注册:"Register",关于:"About",设置:"Setting",实例管理:"Instances",实例列表:"Instance List",实例详情:"Instance Detail",仪表盘:"Dashboard",配置管理:"Configuration",流列表:"Streams",流详情:"Stream Detail",插件列表:"Plugins",日志分析:"Log Analysis",日志详情:"Log Detail",监控记录:"Monitor Records",监控记录详情:"Monitor Record Detail",性能分析:"pprof",性能分析详情:"pprof Detail",地址生成器:"Address Generator",名称:"Name",创建时间:"CreateTime",状态:"Status",在线:"Online",离线:"Offline",操作:"Operation",进入详情:"Detail",重启:"Restart",编辑:"Edit",删除:"Delete",删除成功:"Delete Success",您确定要删除此实例吗:"Are you sure you want to delete this instance?",您确定要退出登录吗:"Are you sure you want to log out?",新建实例:"New Instance",编辑实例:"Edit Instance",确定:"Confirm",取消:"Cancel",提示:"Tips",新建:"Create",新建成功:"Create Success",请输入实例名称:"Please enter instance name",所有接口定时刷新间隔:"All request timing refresh interval",重置:"Reset",基本信息:"Basic Info",版本号:"Version",启动时间:"Start Time",资源使用:"Resource Usage",流数量:"Stream Count",内存使用:"Memory Usage",使用:"Usage",硬盘使用:"Disk Usage",网络:"Network",接收速率:"Receive Rate",发送速率:"Send Rate",网卡:"Network Card",接收总:"Total Receive",发送总:"Total Send",配置:"Config",修改过的:"Modified",配置文件中的:"In Config File",最终合并后的:"Merged",保存:"Save",不保存:"Cancel",类型:"Type",订阅者:"Subscriber",开始时间:"Start Time",带宽:"Bandwidth",公网:"Public NetWork",局域网:"Local NetWork",日志文件列表:"Log Files",大小:"Size",按名称过滤:"Filter by Name",打开:"Open",下载:"Download"};function Mt(){const e=localStorage.getItem("language");if(e)return e;const t=navigator.language.toLowerCase(),n=[P.En,P.Zh];for(const o of n)if(t.indexOf(o)>-1)return o;return P.Zh}const O=De({legacy:!1,locale:Mt(),messages:{[P.Zh]:Tt,[P.En]:Nt}}),{navMode:Rt,navTheme:At,isMobile:Bt,headerSetting:Pt,showFooter:Ot,menuSetting:$t,multiTabsSetting:Lt,crumbsSetting:Dt,permissionMode:Ft,isPageAnimate:It,pageAnimateType:xt}=Et,I=H({id:"app-project-setting",state:()=>({navMode:Rt,navTheme:At,isMobile:Bt,headerSetting:Pt,showFooter:Ot,menuSetting:$t,multiTabsSetting:Lt,crumbsSetting:Dt,permissionMode:Ft,isPageAnimate:It,pageAnimateType:xt,language:O.global.locale.value,isSaas:location.hostname=="console.monibuca.com"||location.hostname=="127.0.0.1"||location.hostname=="localhost"}),getters:{getNavMode(){return this.navMode},getNavTheme(){return this.navTheme},getIsMobile(){return this.isMobile},getHeaderSetting(){return this.headerSetting},getShowFooter(){return this.showFooter},getMenuSetting(){return this.menuSetting},getMultiTabsSetting(){return this.multiTabsSetting},getCrumbsSetting(){return this.multiTabsSetting},getPermissionMode(){return this.permissionMode},getIsPageAnimate(){return this.isPageAnimate},getPageAnimateType(){return this.pageAnimateType}},actions:{setNavTheme(e){this.navTheme=e},setIsMobile(e){this.isMobile=e},setLanguage(e){this.language=e,O.global.locale.value=e,localStorage.setItem("language",e)}}});var M=(e=>(e.BASE_LOGIN="/login",e.BASE_LOGIN_NAME="root_login",e.BASE_REGISTER="/register",e.BASE_REGISTER_NAME="root_register",e.REDIRECT="/redirect",e.REDIRECT_NAME="Redirect",e.BASE_HOME="/instance/list",e.BASE_HOME_REDIRECT="/instance/list",e.ERROR_PAGE_NAME="ErrorPage",e))(M||{});const zt=[M.BASE_REGISTER_NAME,M.BASE_LOGIN_NAME];H({id:"app-tabs-view",state:()=>({tabsList:[]}),getters:{},actions:{initTabs(e){this.tabsList=e},addTabs(e){return zt.includes(e.name)?!1:(this.tabsList.some(n=>n.fullPath==e.fullPath)||this.tabsList.push(e),!0)},closeLeftTabs(e){const t=this.tabsList.findIndex(n=>n.fullPath==e.fullPath);this.tabsList.splice(0,t)},closeRightTabs(e){const t=this.tabsList.findIndex(n=>n.fullPath==e.fullPath);this.tabsList.splice(t+1)},closeOtherTabs(e){this.tabsList=this.tabsList.filter(t=>t.fullPath==e.fullPath)},closeCurrentTab(e){const t=this.tabsList.findIndex(n=>n.fullPath==e.fullPath);this.tabsList.splice(t,1)},closeAllTabs(){this.tabsList=[],localStorage.removeItem("TABS-ROUTES")}}});const{t:Ht}=O.global,L=Fe.create({timeout:1e7,withCredentials:!1}),Jo=!0,Yo="";L.interceptors.response.use(async e=>{const t=e.data;return t&&typeof(t==null?void 0:t.code)=="number"&&(t==null?void 0:t.code)!==0?(window.$message.error(Ht(t.msg)),Promise.reject(t.msg)):t.data||t},e=>Promise.reject(e));function jt(e){return L({url:"/api/user/register",method:"POST",data:e})}function Qo(e){return L({url:"/api/user/getverifycode",method:"POST",data:e})}function Ut(e){return L({url:"/api/user/login",method:"POST",data:e})}function Wt(){return L({url:"/api/user/logout",method:"POST"})}function es(e){return L({url:"/api/user/sendresetpwdmail",method:"POST",data:e})}function Gt(){return L({url:"/api/isTimeout"})}function ts(){return L({url:"/api/wx/info",method:"GET"})}function ns(e){return L({url:"/api/user/bindaccount",method:"POST",data:e})}const Kt=H({id:"app-user",state:()=>({username:"",mail:"",level:0,welcome:"",avatar:"",permissions:[]}),getters:{getAvatar(){return this.avatar},getNickname(){return this.username},getPermissions(){return this.permissions},getCurrentCamera(){return localStorage.getItem("currentCamera")||""}},actions:{setAvatar(e){this.avatar=e},setPermissions(e){this.permissions=e},setCurrentCamera(e){localStorage.setItem("currentCamera",e)},async register(e){try{const t=await jt(e);return Promise.resolve(t)}catch(t){return Promise.reject(t)}},async login(e){try{const t=await Ut(e);return this.username=t.data.nickname,this.level=t.data.level,Promise.resolve(t)}catch(t){return Promise.reject(t)}},async logout(){return await Wt(),this.setPermissions([]),Promise.resolve("")}}});function qt(e){const t=Ie();e.use(t)}const Zt="modulepreload",Xt=function(e,t){return new URL(e,t).href},fe={},m=function(t,n,o){if(!n||n.length===0)return t();const s=document.getElementsByTagName("link");return Promise.all(n.map(r=>{if(r=Xt(r,o),r in fe)return;fe[r]=!0;const a=r.endsWith(".css"),u=a?'[rel="stylesheet"]':"";if(!!o)for(let c=s.length-1;c>=0;c--){const d=s[c];if(d.href===r&&(!a||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${r}"]${u}`))return;const i=document.createElement("link");if(i.rel=a?"stylesheet":Zt,a||(i.as="script",i.crossOrigin=""),i.href=r,document.head.appendChild(i),a)return new Promise((c,d)=>{i.addEventListener("load",c),i.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${r}`)))})})).then(()=>t())},{t:ce}=O.global,W=M.REDIRECT_NAME,Jt=()=>m(()=>import("./404-59ae976f.js"),["./404-59ae976f.js","./vendor-ec30964e.js","./404-85aadbe0.css"],import.meta.url),Ne=()=>m(()=>Promise.resolve().then(()=>Po),void 0,import.meta.url),Yt={path:"/",name:"Root",redirect:M.BASE_HOME,meta:{title:"Root"}},Qt={path:"/login",name:"root_login",component:()=>m(()=>import("./index-b5869e2f.js"),["./index-b5869e2f.js","./vendor-ec30964e.js","./index-8cf1f035.css"],import.meta.url),meta:{title:ce("登录")}},en={path:"/wxlogin",name:"root_Wxlogin",component:()=>m(()=>import("./index-9390d246.js"),["./index-9390d246.js","./vendor-ec30964e.js","./index-deb00574.css"],import.meta.url),meta:{title:"微信扫码登录"}},tn={path:"/register",name:"root_register",component:()=>m(()=>import("./index-b48a47a5.js"),["./index-b48a47a5.js","./vendor-ec30964e.js","./index-ba7be148.css"],import.meta.url),meta:{title:ce("注册")}},nn={path:"/password",name:"root_password",component:()=>m(()=>import("./index-d83799ce.js"),["./index-d83799ce.js","./vendor-ec30964e.js","./index-01735392.css"],import.meta.url),meta:{title:ce("注册")}},_e={path:"/:path(.*)*",name:M.ERROR_PAGE_NAME,component:Ne,meta:{title:M.ERROR_PAGE_NAME,hideBreadcrumb:!0},children:[{path:"/:path(.*)*",name:"ErrorPageSon",component:Jt,meta:{title:M.ERROR_PAGE_NAME,hideBreadcrumb:!0}}]},on={path:"/redirect",name:W,component:Ne,meta:{title:W,hideBreadcrumb:!0},children:[{path:"/redirect/:path(.*)",name:W,component:()=>m(()=>import("./index-98f28a2d.js"),["./index-98f28a2d.js","./vendor-ec30964e.js"],import.meta.url),meta:{title:W,hideBreadcrumb:!0}}]},ae=[nn,tn,Qt,en,Yt,on],sn=M.BASE_LOGIN;async function rn(e,t,n,o){const s=pe();if(e.path==="/instance/"||e.path==="/instance"){n(M.BASE_HOME);return}if(t.path===sn&&e.name==="errorPage"){n(M.BASE_HOME);return}if(s.getIsDynamicAddedRoute){n();return}(await s.generateRoutes()).forEach(u=>{o.addRoute(u)}),o.getRoutes().findIndex(u=>u.name===_e.name)===-1&&o.addRoute(_e),s.setDynamicAddedRoute(!0),n({path:e.path,query:e.query})}function an(e){e.beforeEach(async(t,n,o)=>{var s;(s=window.$loadingBar)==null||s.start(),await rn(t,n,o,e)}),e.afterEach(t=>{var s,r;xe(t.meta.title),t.name=="stream-play"&&(t.meta.frameSrc=t.query.frameSrc);const n=t.params.id,o=t.params.streamPath;(s=window.$loadingBar)==null||s.finish(),e.options.routes.forEach(a=>{if(a.meta.hide){a.meta.hidden=!0;return}const u=a.name.startsWith("instance_stream_"),l=a.name.startsWith("instance")&&!u;a.meta.hidden=n?o?!u:!l:l||u}),(r=window.$loadingBar)==null||r.finish()})}const un=[],ln=Object.freeze(Object.defineProperty({__proto__:null,default:un},Symbol.toStringTag,{value:"Module"})),cn=[],dn=Object.freeze(Object.defineProperty({__proto__:null,default:cn},Symbol.toStringTag,{value:"Module"})),mn=Object.prototype.toString;function K(e,t){return mn.call(e)===`[object ${t}]`}function os(e){return K(e,"Function")}function ss(e){return K(e,"Number")}function rs(e){return K(e,"String")}function as(e){return K(e,"Boolean")}function is(e){return e&&Array.isArray(e)}const pn=typeof window>"u";function hn(e){return!e||!e.getBoundingClientRect?0:e.getBoundingClientRect()}function us(e){const t=document.documentElement,n=t.scrollLeft,o=t.scrollTop,s=t.clientLeft,r=t.clientTop,a=window.pageXOffset,u=window.pageYOffset,l=hn(e),{left:i,top:c,width:d,height:w}=l,V=(a||n)-(s||0),b=(u||o)-(r||0),N=i+a,p=c+u,f=N-V,T=p-b,D=window.document.documentElement.clientWidth,h=window.document.documentElement.clientHeight;return{left:f,top:T,right:D-d-f,bottom:h-w-T,rightIncludeBody:D-f,bottomIncludeBody:h-T}}function ve(e,t,n){e&&t&&n&&e.addEventListener(t,n,!1)}const gn=ze({func:void 0,bool:void 0,string:void 0,number:void 0,object:void 0,integer:void 0});gn.extend([{name:"style",getter:!0,type:[String,Object],default:void 0},{name:"VNodeChild",getter:!0,type:void 0}]);function ne(e,t){const n=parseInt(e,16)+t,o=n>255?255:n;return o.toString(16).length>1?o.toString(16):`0${o.toString(16)}`}function Vn(e,t){return e=e.indexOf("#")>=0?e.substring(1,e.length):e,t=Math.trunc(255*t/100),`#${ne(e.substring(0,2),t)}${ne(e.substring(2,4),t)}${ne(e.substring(4,6),t)}`}function v(e){return()=>Vue.h(naive.NIcon,null,{default:()=>Vue.h(e)})}function de(e){return e.filter(t=>{var n;return(((n=t.meta)==null?void 0:n.hidden)||!1)!=!0&&!["/:path(.*)*","/",M.REDIRECT,M.BASE_LOGIN].includes(t.path)})}function me(e){var t,n;return((t=e.meta)==null?void 0:t.alwaysShow)!=!0&&((n=e.children)==null?void 0:n.length)===1}function Me(e){return de(e).map(t=>{var r;const o=me(t)?t.children[0]:t,s={...o,...o.meta,label:(r=o.meta)==null?void 0:r.title,key:o.name};return o.children&&o.children.length>0&&(s.children=Me(o.children)),s})}function fn(e,t,n){const o=He(e),s=de(o);if(n==="header"){const r=[];return s.forEach(a=>{var c;const l=me(a)?a.children[0]:a;l.children=void 0;const i={...l,...l.meta,label:(c=l.meta)==null?void 0:c.title,key:l.name};r.push(i)}),r}else return Me(s.filter(r=>r.name===t))}function Re(e){return de(e).map(t=>{var r,a,u;const n=me(t),o=n?t.children[0]:t,s={...o,...o.meta,label:(r=o.meta)==null?void 0:r.title,key:o.name,icon:n?(a=t.meta)==null?void 0:a.icon:(u=o.meta)==null?void 0:u.icon};return o.children&&o.children.length>0&&(s.children=Re(o.children)),s})}const{t:E}=O.global,S="instance",_n=[{name:`${S}_dashboard`,path:"/instance/dashboard/:id",meta:{title:E("仪表盘"),icon:v(te)},component:()=>m(()=>import("./index-fd264133.js"),["./index-fd264133.js","./vendor-ec30964e.js","./index-cc631905.js","./index-de28ae1e.js","./index-dfd97757.css"],import.meta.url)},{path:"/instance/config/:id",name:`${S}_config`,meta:{title:E("配置管理"),icon:v(ue)},component:()=>m(()=>import("./index-86f21a60.js"),["./index-86f21a60.js","./vendor-ec30964e.js","./index-cc631905.js","./index-983a54b8.css"],import.meta.url)},{path:"/instance/tasktree/:id",name:`${S}_tasktree`,meta:{title:E("任务树"),icon:v(je)},component:()=>m(()=>import("./index-993672d3.js"),["./index-993672d3.js","./index-eabbb46f.js","./vendor-ec30964e.js","./index-e987c583.css","./index-cc631905.js"],import.meta.url)},{path:"/instance/tasktree/:id/history",name:`${S}_tasktree_history`,meta:{title:E("任务历史"),icon:v(he)},component:()=>m(()=>import("./history-2a89c923.js"),["./history-2a89c923.js","./TableAction-45c049b5.js","./vendor-ec30964e.js","./TableAction-31bdf53c.css","./index-cc631905.js","./installCanvasRenderer-cb1ba546.js","./install-40c3b04b.js"],import.meta.url)},{path:"/instance/stream/:id",name:`${S}_streamlist`,meta:{title:E("流列表"),icon:v(Se)},component:()=>m(()=>import("./index-0854f6f9.js"),["./index-0854f6f9.js","./vendor-ec30964e.js","./TableAction-45c049b5.js","./TableAction-31bdf53c.css","./index-eabbb46f.js","./index-e987c583.css","./index-cc631905.js","./index-2325476e.css"],import.meta.url)},{path:"/instance/stream/detail/:id/:streamPath+",name:`${S}_stream_detail`,meta:{title:E("流详情"),icon:v(te)},component:()=>m(()=>import("./index-828a5b9c.js"),["./index-828a5b9c.js","./vendor-ec30964e.js","./index-cc631905.js","./index-de28ae1e.js","./index-eabbb46f.js","./index-e987c583.css","./index-28f01ea7.css"],import.meta.url)},{path:"/instance/track/snap/audio/:id/:streamPath+",name:`${S}_stream_track_snap_audio`,meta:{title:E("音频轨道快照"),icon:v(Ue)},component:()=>m(()=>import("./track-5d859b4c.js"),["./track-5d859b4c.js","./vendor-ec30964e.js","./TableAction-45c049b5.js","./TableAction-31bdf53c.css","./index-eabbb46f.js","./index-e987c583.css","./index-cc631905.js","./installCanvasRenderer-cb1ba546.js","./install-c0cf116b.js","./install-40c3b04b.js","./track-b94feefc.css"],import.meta.url)},{path:"/instance/track/snap/video/:id/:streamPath+",name:`${S}_stream_track_snap_video`,meta:{title:E("视频轨道快照"),icon:v(We)},component:()=>m(()=>import("./track-5d859b4c.js"),["./track-5d859b4c.js","./vendor-ec30964e.js","./TableAction-45c049b5.js","./TableAction-31bdf53c.css","./index-eabbb46f.js","./index-e987c583.css","./index-cc631905.js","./installCanvasRenderer-cb1ba546.js","./install-c0cf116b.js","./install-40c3b04b.js","./track-b94feefc.css"],import.meta.url)},{path:"/instance/subscribers/:id/:streamPath+",name:`${S}_stream_subscribers`,meta:{title:E("订阅者快照"),icon:v(Ge)},component:()=>m(()=>import("./subscribers-fb9b6547.js"),["./subscribers-fb9b6547.js","./vendor-ec30964e.js","./TableAction-45c049b5.js","./TableAction-31bdf53c.css","./index-eabbb46f.js","./index-e987c583.css","./index-cc631905.js","./subscribers-393bc21a.css"],import.meta.url)},{path:"/instance/plugin/:id",name:`${S}_plugin_list`,meta:{title:E("插件列表"),icon:v(Ke)},component:()=>m(()=>import("./index-3ba1fd9d.js"),["./index-3ba1fd9d.js","./vendor-ec30964e.js","./TableAction-45c049b5.js","./TableAction-31bdf53c.css","./index-cc631905.js","./index-02040a65.css"],import.meta.url)},{path:"/instance/logs/:id",name:`${S}_logs`,meta:{title:E("日志分析"),icon:v(qe)},component:()=>m(()=>import("./index-7ac94d2d.js"),["./index-7ac94d2d.js","./index-cc631905.js","./TableAction-45c049b5.js","./vendor-ec30964e.js","./TableAction-31bdf53c.css"],import.meta.url)},{path:"/instance/logs/:id/detail/:logName",name:`${S}_log_detail`,meta:{title:E("日志详情"),hide:!0},component:()=>m(()=>import("./detail-4b56fa71.js"),["./detail-4b56fa71.js","./vendor-ec30964e.js"],import.meta.url)},{path:"/instance/monitor/:id",name:`${S}_monitor-search`,meta:{title:E("监控记录"),icon:v(he)},component:()=>m(()=>import("./index-c1896374.js"),["./index-c1896374.js","./check-b0b21f0d.js","./index-cc631905.js","./vendor-ec30964e.js","./index-01aec832.js","./index-8f977d17.css"],import.meta.url)},{path:"/instance/monitor/:id/detail/:stream",name:`${S}_monitor-detail`,meta:{title:E("监控记录详情"),hide:!0},component:()=>m(()=>import("./detail-c19ab603.js"),["./detail-c19ab603.js","./vendor-ec30964e.js","./index-cc631905.js","./installCanvasRenderer-cb1ba546.js","./index-01aec832.js","./install-c0cf116b.js","./detail-2e3b75cf.css"],import.meta.url)},{path:"/instance/pprof/:id",name:`${S}_pprof-index`,meta:{title:E("性能分析"),icon:v(Ze)},component:()=>m(()=>import("./index-b301f4a4.js"),["./index-b301f4a4.js","./check-b0b21f0d.js","./index-cc631905.js","./vendor-ec30964e.js"],import.meta.url)},{path:"/instance/stress/:id",name:`${S}_stress-index`,meta:{title:E("压力测试"),icon:v(te)},component:()=>m(()=>import("./index-46755e9c.js"),["./index-46755e9c.js","./vendor-ec30964e.js","./index-cc631905.js","./index-eabbb46f.js","./index-e987c583.css"],import.meta.url)},{path:"/instance/address/:id",name:`${S}_address`,meta:{title:E("地址生成器"),icon:v(Xe)},component:()=>m(()=>import("./index-20e298cf.js"),["./index-20e298cf.js","./vendor-ec30964e.js","./index-cc631905.js","./index-12bc2ddc.css"],import.meta.url)}],vn=Object.freeze(Object.defineProperty({__proto__:null,default:_n},Symbol.toStringTag,{value:"Module"})),{t:wn}=O.global,yn="list",Cn=[{path:"/instance/list",name:yn,meta:{title:wn("实例列表"),icon:v(Se)},component:()=>m(()=>import("./index-4e6efffd.js"),["./index-4e6efffd.js","./vendor-ec30964e.js","./TableAction-45c049b5.js","./TableAction-31bdf53c.css","./index-eabbb46f.js","./index-e987c583.css","./index-cc631905.js"],import.meta.url)}],En=Object.freeze(Object.defineProperty({__proto__:null,default:Cn},Symbol.toStringTag,{value:"Module"})),{t:Sn}=O.global,bn=[{path:"/setting/account",name:"setting-account",meta:{title:Sn("设置"),icon:v(ue),sort:5},component:()=>m(()=>import("./account-15401ba6.js"),["./account-15401ba6.js","./vendor-ec30964e.js","./account-73e0bcec.css"],import.meta.url)}],kn=Object.freeze(Object.defineProperty({__proto__:null,default:bn},Symbol.toStringTag,{value:"Module"})),{t:oe}=O.global,Tn=[{path:"/test",name:"test",meta:{sort:2,isRoot:!0,activeMenu:"test_publish",icon:v(Je),title:oe("测试")},children:[{path:"publish",name:"test_publish",meta:{title:oe("推流测试"),activeMenu:"test_publish",icon:v(Ye)},component:()=>m(()=>import("./publish-a7f37544.js"),["./publish-a7f37544.js","./index-eabbb46f.js","./vendor-ec30964e.js","./index-e987c583.css"],import.meta.url)},{path:"play",name:"test_play",meta:{title:oe("播放测试"),icon:v(Qe),activeMenu:"test_play"},component:()=>m(()=>import("./play-21cd083b.js"),["./play-21cd083b.js","./index-de28ae1e.js","./vendor-ec30964e.js"],import.meta.url)}]}],Nn=Object.freeze(Object.defineProperty({__proto__:null,default:Tn},Symbol.toStringTag,{value:"Module"})),q=[],we=Object.assign({"./routes/about.ts":ln,"./routes/frame.ts":dn,"./routes/instance-detail.ts":vn,"./routes/instance-list.ts":En,"./routes/setting.ts":kn,"./routes/test.ts":Nn});Object.keys(we).forEach(e=>{const t=we[e].default||{},n=Array.isArray(t)?[...t]:[t];q.push(...n)});function Mn(e,t){var n,o;return(((n=e.meta)==null?void 0:n.sort)||0)-(((o=t.meta)==null?void 0:o.sort)||0)}q.sort(Mn);const se=[...q];function Rn(){return[...ae,...q]}const re=et({history:tt(""),routes:Rn(),scrollBehavior:()=>({left:0,top:0})});async function An(e){e.use(re),an(re),await re.isReady()}const pe=H({id:"app-async-route",state:()=>({menus:[],routers:ae,addRouters:[],keepAliveComponents:[],isDynamicAddedRoute:!1}),getters:{getMenus(){return this.menus},getIsDynamicAddedRoute(){return this.isDynamicAddedRoute}},actions:{getRouters(){return Vue.toRaw(this.addRouters)},setDynamicAddedRoute(e){this.isDynamicAddedRoute=e},setRouters(e){this.addRouters=e,this.routers=ae.concat(e)},setMenus(e){this.menus=e},setKeepAliveComponents(e){this.keepAliveComponents=e},async generateRoutes(){return this.setRouters(se),this.setMenus(se),Vue.toRaw(se)}}});function Bn(){const e=le(),t=Vue.computed(()=>e.darkTheme),n=Vue.computed(()=>e.appTheme),o=Vue.computed(()=>e.appThemeList);return{getDarkTheme:t,getAppTheme:n,getAppThemeList:o}}function Z(){const e=I(),t=Vue.computed(()=>e.navMode),n=Vue.computed(()=>e.navTheme),o=Vue.computed(()=>e.isMobile),s=Vue.computed(()=>e.headerSetting),r=Vue.computed(()=>e.multiTabsSetting),a=Vue.computed(()=>e.menuSetting),u=Vue.computed(()=>e.crumbsSetting),l=Vue.computed(()=>e.permissionMode),i=Vue.computed(()=>e.showFooter),c=Vue.computed(()=>e.isPageAnimate),d=Vue.computed(()=>e.pageAnimateType);return{getNavMode:t,getNavTheme:n,getIsMobile:o,getHeaderSetting:s,getMultiTabsSetting:r,getMenuSetting:a,getCrumbsSetting:u,getPermissionMode:l,getShowFooter:i,getIsPageAnimate:c,getPageAnimateType:d,isSaas:Vue.computed(()=>e.isSaas)}}const Pn=Vue.defineComponent({name:"MainView",components:{},props:{notNeedKey:{type:Boolean,default:!1},animate:{type:Boolean,default:!0}},setup(){const{getIsPageAnimate:e,getPageAnimateType:t}=Z(),n=pe(),o=Vue.computed(()=>n.keepAliveComponents),s=Vue.computed(()=>Vue.unref(e)?Vue.unref(t):""),r=F(),a=Vue.computed(()=>r.path+Math.random());return{keepAliveComponents:o,getTransitionName:s,key:a}}});function On(e,t,n,o,s,r){const a=Vue.resolveComponent("RouterView");return Vue.openBlock(),Vue.createBlock(a,{key:e.key},{default:Vue.withCtx(({Component:u,route:l})=>[Vue.createVNode(Vue.Transition,{name:e.getTransitionName,mode:"out-in",appear:""},{default:Vue.withCtx(()=>[(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(u),{key:l.fullPath}))]),_:2},1032,["name"])]),_:1})}const $n=$(Pn,[["render",On]]),Ln=Vue.defineComponent({name:"Menu",components:{},props:{mode:{type:String,default:"vertical"},collapsed:{type:Boolean},location:{type:String,default:"left"}},emits:["update:collapsed"],setup(e,{emit:t}){const n=F(),o=be(),s=pe(),r=I(),a=Vue.ref([]),u=Vue.ref(n.name),l=Vue.ref(""),{getNavMode:i}=Z(),c=i,d=n.matched,w=d&&d.length?d.map(h=>h.name):[],V=Vue.reactive({openKeys:w}),b=Vue.computed(()=>["dark","header-dark"].includes(r.navTheme)),N=Vue.computed(()=>{const h=e.location;return h==="left"||h==="header"&&Vue.unref(c)==="horizontal"?Vue.unref(u):Vue.unref(l)});Vue.watch(()=>r.menuSetting.mixMenu,()=>{p(),e.collapsed&&t("update:collapsed",!e.collapsed)}),Vue.watch(()=>n.fullPath,()=>{var k;p();const h=n.matched;V.openKeys=h.map(A=>A.name);const C=((k=n.meta)==null?void 0:k.activeMenu)||"";u.value=C||n.name});function p(){var h;if(!r.menuSetting.mixMenu)a.value=Re(s.getMenus);else{const C=n.matched[0].name||"";a.value=fn(s.getMenus,C,e.location);const k=(h=n==null?void 0:n.matched[0].meta)==null?void 0:h.activeMenu;l.value=k||C||""}}function f(h){o.push({name:h,query:{id:n.query.id}}),t("clickMenuItem",h)}function T(h){if(!h)return;const C=h.find(A=>V.openKeys.indexOf(A)===-1),k=D(C);V.openKeys=k?C?[C]:[]:h}function D(h){if(!h)return!1;const C=[];for(const{children:k,key:A}of Vue.unref(a))k&&k.length&&C.push(A);return C.includes(h)}return Vue.onMounted(()=>{p()}),{...Vue.toRefs(V),inverted:b,menus:a,selectedKeys:u,headerMenuSelectKey:l,getSelectedKeys:N,clickMenuItem:f,menuExpanded:T}}});function Dn(e,t,n,o,s,r){const a=Vue.resolveComponent("NMenu");return Vue.openBlock(),Vue.createBlock(a,{options:e.menus,inverted:e.inverted,mode:e.mode,collapsed:e.collapsed,"collapsed-width":64,"collapsed-icon-size":20,indent:24,"expanded-keys":e.openKeys,value:e.getSelectedKeys,"onUpdate:value":e.clickMenuItem,"onUpdate:expandedKeys":e.menuExpanded},null,8,["options","inverted","mode","collapsed","expanded-keys","value","onUpdate:value","onUpdate:expandedKeys"])}const ie=$(Ln,[["render",Dn]]),Fn={TranslationOutlined:nt,SettingOutlined:ue,LockOutlined:ot,GithubOutlined:st,SearchOutlined:rt,MenuFoldOutlined:at,MenuUnfoldOutlined:it,FullscreenOutlined:ut,FullscreenExitOutlined:lt,PoweroffOutlined:ct,ReloadOutlined:dt,LogoutOutlined:mt,UserOutlined:pt,CheckOutlined:ke},ye=""+new URL("nav-theme-dark-be6f2a3d.svg",import.meta.url).href,In=""+new URL("nav-horizontal-f3cbecb9.svg",import.meta.url).href,xn=""+new URL("nav-theme-light-43fdcab2.svg",import.meta.url).href;const zn=Vue.defineComponent({name:"ProjectSetting",components:{CheckOutlined:ke,Moon:ht,SunnySharp:gt},props:{title:{type:String,default:"主题配置"},width:{type:Number,default:280}},setup(e){const t=I(),n=le(),o=Vue.reactive({width:e.width,title:e.title,isDrawer:!1,placement:"right",alertText:"该功能主要实时预览各种布局效果,更多完整配置在 projectSetting.ts 中设置,建议在生产环境关闭该布局预览功能。",appThemeList:n.appThemeList});Vue.watch(()=>n.darkTheme,i=>{t.navTheme=i?"header-dark":"dark"});function s(){o.isDrawer=!0}function r(){o.isDrawer=!1}function a(i){t.navTheme=i,t.navMode==="horizontal"&&["light"].includes(i)&&(t.navTheme="dark")}function u(i){n.appTheme=i}function l(i){t.navMode=i,t.menuSetting.mixMenu=!1}return{...Vue.toRefs(o),settingStore:t,designStore:n,togNavTheme:a,togNavMode:l,togTheme:u,darkTheme:naive.darkTheme,openDrawer:s,closeDrawer:r}}}),X=e=>(Vue.pushScopeId("data-v-1dfb9bbc"),e=e(),Vue.popScopeId(),e),Hn={class:"drawer"},jn=Vue.createTextVNode("主题"),Un={class:"justify-center drawer-setting-item dark-switch"},Wn=Vue.createTextVNode("系统主题"),Gn={class:"drawer-setting-item align-items-top"},Kn=["onClick"],qn=Vue.createTextVNode("导航栏模式"),Zn={class:"drawer-setting-item align-items-top"},Xn={class:"drawer-setting-item-style align-items-top"},Jn=X(()=>Vue.createElementVNode("span",null,"左侧菜单模式",-1)),Yn={class:"drawer-setting-item-style"},Qn=X(()=>Vue.createElementVNode("span",null,"顶部菜单模式",-1)),eo=Vue.createTextVNode("导航栏风格"),to={class:"drawer-setting-item align-items-top"},no={class:"drawer-setting-item-style align-items-top"},oo=X(()=>Vue.createElementVNode("span",null,"暗色侧边栏",-1)),so={class:"drawer-setting-item-style"},ro=X(()=>Vue.createElementVNode("span",null,"白色侧边栏",-1));function ao(e,t,n,o,s,r){const a=Vue.resolveComponent("n-divider"),u=Vue.resolveComponent("SunnySharp"),l=Vue.resolveComponent("n-icon"),i=Vue.resolveComponent("Moon"),c=Vue.resolveComponent("n-switch"),d=Vue.resolveComponent("n-tooltip"),w=Vue.resolveComponent("CheckOutlined"),V=Vue.resolveComponent("n-badge"),b=Vue.resolveComponent("n-drawer-content"),N=Vue.resolveComponent("n-drawer");return Vue.openBlock(),Vue.createBlock(N,{show:e.isDrawer,"onUpdate:show":t[5]||(t[5]=p=>e.isDrawer=p),width:e.width,placement:e.placement},{default:Vue.withCtx(()=>[Vue.createVNode(b,{title:e.title,"native-scrollbar":!1},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",Hn,[Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[jn]),_:1}),Vue.createElementVNode("div",Un,[Vue.createVNode(d,{placement:"bottom"},{trigger:Vue.withCtx(()=>[Vue.createVNode(c,{value:e.designStore.darkTheme,"onUpdate:value":t[0]||(t[0]=p=>e.designStore.darkTheme=p),class:"dark-theme-switch"},{checked:Vue.withCtx(()=>[Vue.createVNode(l,{size:"14",color:"#ffd93b"},{default:Vue.withCtx(()=>[Vue.createVNode(u)]),_:1})]),unchecked:Vue.withCtx(()=>[Vue.createVNode(l,{size:"14",color:"#ffd93b"},{default:Vue.withCtx(()=>[Vue.createVNode(i)]),_:1})]),_:1},8,["value"])]),default:Vue.withCtx(()=>[Vue.createElementVNode("span",null,Vue.toDisplayString(e.designStore.darkTheme?"深":"浅")+"色主题",1)]),_:1})]),Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[Wn]),_:1}),Vue.createElementVNode("div",Gn,[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.appThemeList,(p,f)=>(Vue.openBlock(),Vue.createElementBlock("span",{class:"theme-item",key:f,style:Vue.normalizeStyle({"background-color":p}),onClick:T=>e.togTheme(p)},[p===e.designStore.appTheme?(Vue.openBlock(),Vue.createBlock(l,{key:0,size:"12"},{default:Vue.withCtx(()=>[Vue.createVNode(w)]),_:1})):Vue.createCommentVNode("",!0)],12,Kn))),128))]),Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[qn]),_:1}),Vue.createElementVNode("div",Zn,[Vue.createElementVNode("div",Xn,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:ye,onClick:t[1]||(t[1]=p=>e.togNavMode("vertical")),alt:"左侧菜单模式"})]),default:Vue.withCtx(()=>[Jn]),_:1}),Vue.withDirectives(Vue.createVNode(V,{dot:"",color:"#19be6b"},null,512),[[Vue.vShow,e.settingStore.navMode==="vertical"]])]),Vue.createElementVNode("div",Yn,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:In,alt:"顶部菜单模式",onClick:t[2]||(t[2]=p=>e.togNavMode("horizontal"))})]),default:Vue.withCtx(()=>[Qn]),_:1}),Vue.withDirectives(Vue.createVNode(V,{dot:"",color:"#19be6b"},null,512),[[Vue.vShow,e.settingStore.navMode==="horizontal"]])])]),Vue.createVNode(a,{"title-placement":"center"},{default:Vue.withCtx(()=>[eo]),_:1}),Vue.createElementVNode("div",to,[Vue.createElementVNode("div",no,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:ye,alt:"暗色侧边栏",onClick:t[3]||(t[3]=p=>e.togNavTheme("dark"))})]),default:Vue.withCtx(()=>[oo]),_:1}),e.settingStore.navTheme==="dark"?(Vue.openBlock(),Vue.createBlock(V,{key:0,dot:"",color:"#19be6b"})):Vue.createCommentVNode("",!0)]),Vue.createElementVNode("div",so,[Vue.createVNode(d,{placement:"top"},{trigger:Vue.withCtx(()=>[Vue.createElementVNode("img",{src:xn,alt:"白色侧边栏",onClick:t[4]||(t[4]=p=>e.togNavTheme("light"))})]),default:Vue.withCtx(()=>[ro]),_:1}),e.settingStore.navTheme==="light"?(Vue.openBlock(),Vue.createBlock(V,{key:0,dot:"",color:"#19be6b"})):Vue.createCommentVNode("",!0)])])])]),_:1},8,["title"])]),_:1},8,["show","width","placement"])}const io=$(zn,[["render",ao],["__scopeId","data-v-1dfb9bbc"]]),uo=""+new URL("logo-4a45ef13.png",import.meta.url).href;const lo="English",co="中文",mo=Vue.defineComponent({name:"PageHeader",components:{...Fn,NDialogProvider:naive.NDialogProvider,ProjectSetting:io,AsideMenu:ie},props:{collapsed:{type:Boolean},inverted:{type:Boolean}},emits:["update:collapsed"],setup(e,{emit:t}){const n=I(),o=Kt(),{language:s}=Te(n),r=[{label:lo,value:P.En},{label:co,value:P.Zh}],{isSaas:a,getNavMode:u,getNavTheme:l,getHeaderSetting:i,getMenuSetting:c,getCrumbsSetting:d}=Z(),w=Vue.ref(),V=Vue.ref(0),b=Vue.ref(!1),N=Vue.ref(!1),p=Vue.ref(!1),f=F();a.value||Gt().then(_=>{b.value=!0,V.value=Number(_.data.remainseconds)*1e3,V.value<5*60*1e3?N.value=!0:N.value=!1}).catch(_=>{console.log(_),p.value=!0});const T=Vue.reactive({username:o.username||o.mail,level:o.level,fullscreenIcon:"FullscreenOutlined",navMode:u,navTheme:l,headerSetting:i,crumbsSetting:d}),D=Vue.computed(()=>{const _=Vue.unref(l);return["light","header-dark"].includes(_)?e.inverted:!e.inverted}),h=Vue.computed(()=>Vue.unref(c).mixMenu),C=()=>{window.location.href="/#/instance/list",window.location.reload()},k=Vue.computed(()=>{const{collapsed:_}=e,{minMenuWidth:B,menuWidth:z}=Vue.unref(c);return{left:_?`${B}px`:`${z}px`,width:`calc(100% - ${_?`${B}px`:`${z}px`})`}}),A=Vue.computed(()=>"header"),J=()=>{console.log(888888),p.value=!0},y=be(),g=F();console.log("🚀 ~ setup ~ route:",g.meta);const x=_=>_.map(B=>{const z={...B,label:B.meta.title,key:B.name,disabled:B.path==="/"};return B.children&&B.children.length>0&&(z.children=x(B.children)),z}),Y=Vue.computed(()=>{const _=x(g.matched);return console.log(1111,_),x(g.matched)}),Q=_=>{console.log("🚀 ~ dropdownSelect ~ key:",_),y.push(_)},j=Vue.ref(g.name=="instance_list");Vue.watch(()=>f.fullPath,()=>{j.value=f.name=="instance_list"});const ee=()=>{y.push({path:"/redirect"+Vue.unref(g).fullPath})},U=()=>T.fullscreenIcon=document.fullscreenElement!==null?"FullscreenExitOutlined":"FullscreenOutlined";document.addEventListener("fullscreenchange",U);const R=()=>{document.fullscreenElement?document.exitFullscreen&&document.exitFullscreen():document.documentElement.requestFullscreen()},Pe=[{icon:"GithubOutlined",tips:"github",eventObject:{click:()=>window.open("https://github.com/monibuca")}}];function Oe(){const{openDrawer:_}=w.value;_()}function $e(_){t("update:collapsed",!_)}function Le(_){n.setLanguage(_)}return{handleUpdateValue:Le,language:s,langOptions:r,isSaas:a,isEnd:p,isHigh:N,setTip:J,active:b,duration:V,...Vue.toRefs(T),iconList:Pe,toggleFullScreen:R,route:g,dropdownSelect:Q,userSetting(){y.push({name:"Setting"})},getChangeStyle:k,breadcrumbList:Y,reloadPage:ee,drawerSetting:w,openSetting:Oe,getInverted:D,getMenuLocation:A,mixMenu:h,switchCollapse:$e,isHome:j,goBack:C}}}),po=e=>(Vue.pushScopeId("data-v-4670b0f4"),e=e(),Vue.popScopeId(),e),ho={class:"layout-header"},go={key:0,class:"layout-header-left"},Vo={key:0,class:"logo"},fo=po(()=>Vue.createElementVNode("img",{src:uo,alt:""},null,-1)),_o={class:"title"},vo={key:1,class:"layout-header-left"},wo={class:"link-text"},yo={class:"link-text"},Co={class:"link-text"},Eo={class:"layout-header-right"},So={key:0,class:"c-wrap"},bo={key:1},ko={key:0,class:"c-wrap"},To={key:1,class:"c-wrap"},No=Vue.createTextVNode(" 体验版倒计时: "),Mo={class:"lang-select"};function Ro(e,t,n,o,s,r){const a=Vue.resolveComponent("AsideMenu"),u=Vue.resolveComponent("MenuUnfoldOutlined"),l=Vue.resolveComponent("n-icon"),i=Vue.resolveComponent("MenuFoldOutlined"),c=Vue.resolveComponent("n-breadcrumb-item"),d=Vue.resolveComponent("n-breadcrumb"),w=Vue.resolveComponent("n-button"),V=Vue.resolveComponent("n-countdown"),b=Vue.resolveComponent("TranslationOutlined"),N=Vue.resolveComponent("n-popselect"),p=Vue.resolveComponent("ProjectSetting");return Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,[Vue.createElementVNode("div",ho,[e.navMode==="horizontal"||e.navMode==="horizontal-mix"&&e.mixMenu?(Vue.openBlock(),Vue.createElementBlock("div",go,[e.navMode==="horizontal"?(Vue.openBlock(),Vue.createElementBlock("div",Vo,[fo,Vue.withDirectives(Vue.createElementVNode("h2",_o,"Monibuca",512),[[Vue.vShow,!e.collapsed]])])):Vue.createCommentVNode("",!0),Vue.createVNode(a,{collapsed:e.collapsed,"onUpdate:collapsed":t[0]||(t[0]=f=>e.collapsed=f),location:e.getMenuLocation,"onUpdate:location":t[1]||(t[1]=f=>e.getMenuLocation=f),inverted:e.getInverted,mode:"horizontal"},null,8,["collapsed","location","inverted"])])):(Vue.openBlock(),Vue.createElementBlock("div",vo,[Vue.createElementVNode("div",{class:"ml-1 layout-header-trigger layout-header-trigger-min",onClick:t[2]||(t[2]=f=>e.switchCollapse(e.collapsed))},[e.collapsed?(Vue.openBlock(),Vue.createBlock(l,{key:0,size:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(u)]),_:1})):(Vue.openBlock(),Vue.createBlock(l,{key:1,size:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(i)]),_:1}))]),e.crumbsSetting.show?(Vue.openBlock(),Vue.createBlock(d,{key:0},{default:Vue.withCtx(()=>[e.route.params.id?(Vue.openBlock(),Vue.createBlock(c,{key:0,onClick:t[3]||(t[3]=f=>e.dropdownSelect("/instance/list"))},{default:Vue.withCtx(()=>[Vue.createElementVNode("span",wo,Vue.toDisplayString(e.$t("实例列表")),1)]),_:1})):Vue.createCommentVNode("",!0),e.route.params.id&&e.route.params.streamPath?(Vue.openBlock(),Vue.createBlock(c,{key:1,onClick:t[4]||(t[4]=f=>e.dropdownSelect({name:"instance_streamlist",params:e.route.params}))},{default:Vue.withCtx(()=>[Vue.createElementVNode("span",yo,Vue.toDisplayString(e.$t("流列表")),1)]),_:1})):Vue.createCommentVNode("",!0),Vue.createVNode(c,null,{default:Vue.withCtx(()=>[Vue.createElementVNode("span",Co,Vue.toDisplayString(e.route.meta.title),1)]),_:1})]),_:1})):Vue.createCommentVNode("",!0)])),Vue.createElementVNode("div",Eo,[e.isSaas?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",So,[e.isHome?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(w,{key:0,type:"primary",onClick:e.goBack},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("返回首页")),1)]),_:1},8,["onClick"]))])),e.isSaas?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",bo,[e.isEnd?(Vue.openBlock(),Vue.createElementBlock("div",ko,"体验版时间已用尽,请联系官方人员")):(Vue.openBlock(),Vue.createElementBlock("div",To,[No,Vue.createElementVNode("div",{class:Vue.normalizeClass([e.isHigh?"count-down":""])},[Vue.createVNode(V,{duration:e.duration,"on-finish":e.setTip,active:e.active},null,8,["duration","on-finish","active"])],2)]))])),Vue.createElementVNode("div",Mo,[Vue.createVNode(N,{value:e.language,"onUpdate:value":[t[5]||(t[5]=f=>e.language=f),e.handleUpdateValue],options:e.langOptions,trigger:"click"},{default:Vue.withCtx(()=>[Vue.createVNode(l,{size:"18"},{default:Vue.withCtx(()=>[Vue.createVNode(b)]),_:1})]),_:1},8,["value","options","onUpdate:value"])])])]),Vue.createVNode(p,{ref:"drawerSetting"},null,512)],64)}const Ao=$(mo,[["render",Ro],["__scopeId","data-v-4670b0f4"]]);const Bo=Vue.defineComponent({setup(e){const{getDarkTheme:t}=Bn(),{getNavMode:n,getNavTheme:o,getHeaderSetting:s,getMenuSetting:r,getMultiTabsSetting:a}=Z(),u=I(),l=n,i=Vue.ref(!1),{mobileWidth:c,menuWidth:d}=Vue.unref(r),w=Vue.computed({get:()=>u.getIsMobile,set:y=>u.setIsMobile(y)}),V=Vue.computed(()=>{const{fixed:y}=Vue.unref(s);return y?"absolute":"static"}),b=Vue.computed(()=>{const y=u.menuSetting.mixMenu,g=F();return Vue.unref(l)!="horizontal-mix"?!0:!(Vue.unref(l)==="horizontal-mix"&&y&&g.meta.isRoot)}),N=Vue.computed(()=>{const{fixed:y}=Vue.unref(s);return y?"absolute":"static"}),p=Vue.computed(()=>Vue.unref(a).show),f=Vue.computed(()=>Vue.unref(a).fixed),T=Vue.computed(()=>["dark","header-dark"].includes(Vue.unref(o))),D=Vue.computed(()=>{const y=Vue.unref(o);return["light","header-dark"].includes(y)?Vue.unref(T):!Vue.unref(T)}),h=Vue.computed(()=>{const{minMenuWidth:y,menuWidth:g}=Vue.unref(r);return i.value?y:g}),C=Vue.computed(()=>"left"),k=Vue.computed({get:()=>w.value&&i.value,set:y=>i.value=y}),A=()=>{document.body.clientWidth<=c?w.value=!0:w.value=!1,i.value=!1},J=()=>{document.body.clientWidth<=950?i.value=!0:i.value=!1,A()};return Vue.onMounted(()=>{A(),window.addEventListener("resize",J),window.$loading=naive.useLoadingBar(),window.$loading.finish()}),(y,g)=>{const x=Vue.resolveComponent("n-layout-sider"),Y=Vue.resolveComponent("n-drawer"),Q=Vue.resolveComponent("n-layout-header"),j=Vue.resolveComponent("n-layout-content"),ee=Vue.resolveComponent("n-back-top"),U=Vue.resolveComponent("n-layout");return Vue.openBlock(),Vue.createBlock(U,{class:"layout",position:Vue.unref(N),"has-sider":""},{default:Vue.withCtx(()=>[!Vue.unref(w)&&Vue.unref(b)&&(Vue.unref(l)==="vertical"||Vue.unref(l)==="horizontal-mix")?(Vue.openBlock(),Vue.createBlock(x,{key:0,onCollapse:g[2]||(g[2]=R=>i.value=!0),position:Vue.unref(N),onExpand:g[3]||(g[3]=R=>i.value=!1),collapsed:i.value,"collapse-mode":"width","collapsed-width":64,width:Vue.unref(h),"native-scrollbar":!1,inverted:Vue.unref(T),class:"layout-sider"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Ve),{collapsed:i.value},null,8,["collapsed"]),Vue.createVNode(Vue.unref(ie),{collapsed:i.value,"onUpdate:collapsed":g[0]||(g[0]=R=>i.value=R),location:Vue.unref(C),"onUpdate:location":g[1]||(g[1]=R=>Vue.isRef(C)?C.value=R:null)},null,8,["collapsed","location"])]),_:1},8,["position","collapsed","width","inverted"])):Vue.createCommentVNode("",!0),Vue.createVNode(Y,{show:Vue.unref(k),"onUpdate:show":g[5]||(g[5]=R=>Vue.isRef(k)?k.value=R:null),width:Vue.unref(d),placement:"left",class:"layout-side-drawer"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Ve),{collapsed:i.value},null,8,["collapsed"]),Vue.createVNode(Vue.unref(ie),{onClickMenuItem:g[4]||(g[4]=R=>i.value=!1)})]),_:1},8,["show","width"]),Vue.createVNode(U,{inverted:Vue.unref(T)},{default:Vue.withCtx(()=>[Vue.createVNode(Q,{inverted:Vue.unref(D),position:Vue.unref(V)},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Ao),{collapsed:i.value,"onUpdate:collapsed":g[6]||(g[6]=R=>i.value=R),inverted:Vue.unref(T)},null,8,["collapsed","inverted"])]),_:1},8,["inverted","position"]),Vue.createVNode(j,{class:Vue.normalizeClass(["layout-content",{"layout-default-background":Vue.unref(t)===!1}])},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",{class:Vue.normalizeClass(["layout-content-main",{"layout-content-main-fix":Vue.unref(f),"fluid-header":Vue.unref(V)==="static"}])},[Vue.createElementVNode("div",{class:Vue.normalizeClass(["main-view",{"main-view-fix":Vue.unref(f),noMultiTabs:!Vue.unref(p),"mt-3":!Vue.unref(p)}])},[Vue.createVNode(Vue.unref($n))],2)],2)]),_:1},8,["class"]),Vue.createVNode(ee,{right:100})]),_:1},8,["inverted"])]),_:1},8,["position"])}}}),Ae=$(Bo,[["__scopeId","data-v-75fb7155"]]),Po=Object.freeze(Object.defineProperty({__proto__:null,default:Ae},Symbol.toStringTag,{value:"Module"})),Oo={name:"MessageContent",setup(){window.$message=naive.useMessage()}};function $o(e,t,n,o,s,r){return null}const Lo=$(Oo,[["render",$o]]),Do={name:"DialogContent",setup(){window.$dialog=naive.useDialog()}};function Fo(e,t,n,o,s,r){return null}const Io=$(Do,[["render",Fo]]),xo=Vue.defineComponent({name:"Application",components:{NDialogProvider:naive.NDialogProvider,NNotificationProvider:naive.NNotificationProvider,NMessageProvider:naive.NMessageProvider,NLoadingBarProvider:naive.NLoadingBarProvider,MessageContent:Lo,DialogContent:Io},setup(){return{}}});function zo(e,t,n,o,s,r){const a=Vue.resolveComponent("DialogContent"),u=Vue.resolveComponent("MessageContent"),l=Vue.resolveComponent("n-message-provider"),i=Vue.resolveComponent("n-notification-provider"),c=Vue.resolveComponent("n-dialog-provider"),d=Vue.resolveComponent("n-loading-bar-provider");return Vue.openBlock(),Vue.createBlock(d,null,{default:Vue.withCtx(()=>[Vue.createVNode(c,null,{default:Vue.withCtx(()=>[Vue.createVNode(a),Vue.createVNode(i,null,{default:Vue.withCtx(()=>[Vue.createVNode(l,null,{default:Vue.withCtx(()=>[Vue.createVNode(u),Vue.renderSlot(e.$slots,"default",{slot:"default"})]),_:3})]),_:3})]),_:3})]),_:3})}const Be=$(xo,[["render",zo]]);const Ho=Vue.defineComponent({setup(e){const t=F();ge.registerLanguage("yaml",Vt);const n=le(),o=I(),{language:s}=Te(o),r=Vue.computed(()=>s.value===P.Zh?naive.zhCN:naive.enUS),a=Vue.computed(()=>s.value===P.Zh?naive.dateZhCN:naive.dateEnUS),u=Vue.computed(()=>{const i=n.appTheme,c=Vn(n.appTheme,6);return{common:{primaryColor:i,primaryColorHover:c,primaryColorPressed:c},LoadingBar:{colorLoading:i}}});Vue.onMounted(async()=>{});const l=Vue.computed(()=>n.darkTheme?naive.darkTheme:void 0);return(i,c)=>{const d=Vue.resolveComponent("RouterView"),w=Vue.resolveComponent("NConfigProvider");return Vue.openBlock(),Vue.createBlock(w,{locale:Vue.unref(r),theme:Vue.unref(l),"theme-overrides":Vue.unref(u),hljs:Vue.unref(ge),"date-locale":Vue.unref(a)},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Be),null,{default:Vue.withCtx(()=>[Vue.unref(t).name.startsWith("root")?(Vue.openBlock(),Vue.createBlock(d,{key:0})):(Vue.openBlock(),Vue.createBlock(Ae,{key:1}))]),_:1})]),_:1},8,["locale","theme","theme-overrides","hljs","date-locale"])}}}),G=new Map;let Ce;pn||(ve(document,"mousedown",e=>Ce=e),ve(document,"mouseup",e=>{for(const{documentHandler:t}of G.values())t(e,Ce)}));function Ee(e,t){let n=[];return Array.isArray(t.arg)?n=t.arg:n.push(t.arg),function(o,s){const r=t.instance.popperRef,a=o.target,u=s.target,l=!t||!t.instance,i=!a||!u,c=e.contains(a)||e.contains(u),d=e===a,w=n.length&&n.some(b=>b==null?void 0:b.contains(a))||n.length&&n.includes(u),V=r&&(r.contains(a)||r.contains(u));l||i||c||d||w||V||t.value()}}const jo={beforeMount(e,t){G.set(e,{documentHandler:Ee(e,t),bindingFn:t.value})},updated(e,t){G.set(e,{documentHandler:Ee(e,t),bindingFn:t.value})},unmounted(e){G.delete(e)}};function Uo(e){e.directive("click-out-side",jo)}const Wo=["width","height"],Go=["xlink:href","fill"],Ko={props:{prefix:{type:String,default:"icon"},name:{type:String,required:!0},color:{type:String,default:"#333"},width:{type:String,default:"auto"},height:{type:String,default:"auto"}},setup(e){const t=e,n=Vue.computed(()=>`#${t.prefix}-${t.name}`);return(o,s)=>(Vue.openBlock(),Vue.createElementBlock("svg",{"aria-hidden":"true",class:"svg-icon",width:t.width,height:t.height},[Vue.createElementVNode("use",{"xlink:href":Vue.unref(n),fill:t.color},null,8,Go)],8,Wo))}};function qo(e){e.use(naive)}if(typeof window<"u"){let e=function(){var t=document.body,n=document.getElementById("__svg__icons__dom__");n||(n=document.createElementNS("http://www.w3.org/2000/svg","svg"),n.style.position="absolute",n.style.width="0",n.style.height="0",n.id="__svg__icons__dom__",n.setAttribute("xmlns","http://www.w3.org/2000/svg"),n.setAttribute("xmlns:link","http://www.w3.org/1999/xlink")),n.innerHTML='',t.insertBefore(n,t.lastChild)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e):e()}async function Zo(){const e=Vue.createApp(Be),t=Vue.createApp(Ho);t.use(O),qt(t),qo(t),Uo(t),e.mount("#appProvider",!0),await An(t),t.component("svg-icon",Ko),t.mount("#app",!0)}Zo();export{jo as C,M as P,$ as _,I as a,uo as b,re as c,Z as d,Bn as e,ss as f,Qo as g,as as h,O as i,rs as j,is as k,Jo as l,os as m,us as n,Yo as o,gn as p,ts as q,es as r,L as s,ns as t,Kt as u}; diff --git a/plugin/console/web/assets/index-5c9e290e.js b/plugin/console/web/assets/index-c1896374.js similarity index 91% rename from plugin/console/web/assets/index-5c9e290e.js rename to plugin/console/web/assets/index-c1896374.js index 4141ee0..bbf68bf 100644 --- a/plugin/console/web/assets/index-5c9e290e.js +++ b/plugin/console/web/assets/index-c1896374.js @@ -1 +1 @@ -import{_ as y}from"./check-09a8a6df.js";import{d as C}from"./index-c7d04dfb.js";import{m as D,l as N}from"./vendor-ec30964e.js";import{Y as k}from"./index-01aec832.js";import{_ as g}from"./index-93e74700.js";const h={key:0,class:"query-bar"},w=Vue.createTextVNode("今天"),x=Vue.createTextVNode("昨天"),B=Vue.createTextVNode("查询"),F=Vue.defineComponent({setup(E){const n=Vue.ref(!1),l=D(),i=N().params.id,o=Vue.ref(""),u=Vue.ref([Date.now(),Date.now()]),r=Vue.ref([]);function s(){u.value=[Date.now(),Date.now()]}function d(){u.value=[Date.now()-24*3600*1e3,Date.now()-24*3600*1e3]}function c(e){return new Date(e-new Date().getTimezoneOffset()*6e4).toISOString().replace(/\.[^\.]+Z/,"")}const p=()=>{C(i,o.value,u.value.join("-")).then(e=>{e=k.parse(e),e?r.value=e:r.value=[]})},m=[{title:"流名称",key:"path"},{title:"流创建时间",key:"time",render(e){return Vue.h("span",{},new Date(e.time).toLocaleString())}},{title:"操作",key:"action",render(e){return Vue.h(naive.NButton,{strong:!0,tertiary:!0,size:"small",onClick:()=>V(e)},{default:()=>"详情"})}}];function V(e){l.push({name:"monitor-detail",params:{stream:e.path+"/"+c(e.time)}})}return(e,t)=>{const _=Vue.resolveComponent("n-input"),v=Vue.resolveComponent("n-date-picker"),f=Vue.resolveComponent("n-data-table");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(y,{name:"Monitor",value:n.value,"onUpdate:value":t[0]||(t[0]=a=>n.value=a)},null,8,["value"]),n.value?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",h,[Vue.createVNode(_,{class:"input-field",placeholder:"输入流名称",value:o.value,"onUpdate:value":t[1]||(t[1]=a=>o.value=a),clearable:""},null,8,["value"]),Vue.createVNode(Vue.unref(naive.NButton),{onClick:s},{default:Vue.withCtx(()=>[w]),_:1}),Vue.createVNode(Vue.unref(naive.NButton),{onClick:d},{default:Vue.withCtx(()=>[x]),_:1}),Vue.createVNode(v,{class:"input-field",placeholder:"选择日期范围",value:u.value,"onUpdate:value":t[2]||(t[2]=a=>u.value=a),type:"daterange","range-separator":"至",format:"yyyy-MM-dd",clearable:""},null,8,["value"]),Vue.createVNode(Vue.unref(naive.NButton),{type:"primary",onClick:p},{default:Vue.withCtx(()=>[B]),_:1})])),Vue.createVNode(f,{columns:m,data:r.value,pagination:{pageSize:10,showSizePicker:!0},bordered:!1},null,8,["data"])])}}}),M=g(F,[["__scopeId","data-v-54f3aa7d"]]);export{M as default}; +import{_ as y}from"./check-b0b21f0d.js";import{d as C}from"./index-cc631905.js";import{m as D,l as N}from"./vendor-ec30964e.js";import{Y as k}from"./index-01aec832.js";import{_ as g}from"./index-c14b60e2.js";const h={key:0,class:"query-bar"},w=Vue.createTextVNode("今天"),x=Vue.createTextVNode("昨天"),B=Vue.createTextVNode("查询"),F=Vue.defineComponent({setup(E){const n=Vue.ref(!1),l=D(),i=N().params.id,o=Vue.ref(""),u=Vue.ref([Date.now(),Date.now()]),r=Vue.ref([]);function s(){u.value=[Date.now(),Date.now()]}function d(){u.value=[Date.now()-24*3600*1e3,Date.now()-24*3600*1e3]}function c(e){return new Date(e-new Date().getTimezoneOffset()*6e4).toISOString().replace(/\.[^\.]+Z/,"")}const p=()=>{C(i,o.value,u.value.join("-")).then(e=>{e=k.parse(e),e?r.value=e:r.value=[]})},m=[{title:"流名称",key:"path"},{title:"流创建时间",key:"time",render(e){return Vue.h("span",{},new Date(e.time).toLocaleString())}},{title:"操作",key:"action",render(e){return Vue.h(naive.NButton,{strong:!0,tertiary:!0,size:"small",onClick:()=>V(e)},{default:()=>"详情"})}}];function V(e){l.push({name:"monitor-detail",params:{stream:e.path+"/"+c(e.time)}})}return(e,t)=>{const _=Vue.resolveComponent("n-input"),v=Vue.resolveComponent("n-date-picker"),f=Vue.resolveComponent("n-data-table");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(y,{name:"Monitor",value:n.value,"onUpdate:value":t[0]||(t[0]=a=>n.value=a)},null,8,["value"]),n.value?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createElementBlock("div",h,[Vue.createVNode(_,{class:"input-field",placeholder:"输入流名称",value:o.value,"onUpdate:value":t[1]||(t[1]=a=>o.value=a),clearable:""},null,8,["value"]),Vue.createVNode(Vue.unref(naive.NButton),{onClick:s},{default:Vue.withCtx(()=>[w]),_:1}),Vue.createVNode(Vue.unref(naive.NButton),{onClick:d},{default:Vue.withCtx(()=>[x]),_:1}),Vue.createVNode(v,{class:"input-field",placeholder:"选择日期范围",value:u.value,"onUpdate:value":t[2]||(t[2]=a=>u.value=a),type:"daterange","range-separator":"至",format:"yyyy-MM-dd",clearable:""},null,8,["value"]),Vue.createVNode(Vue.unref(naive.NButton),{type:"primary",onClick:p},{default:Vue.withCtx(()=>[B]),_:1})])),Vue.createVNode(f,{columns:m,data:r.value,pagination:{pageSize:10,showSizePicker:!0},bordered:!1},null,8,["data"])])}}}),M=g(F,[["__scopeId","data-v-54f3aa7d"]]);export{M as default}; diff --git a/plugin/console/web/assets/index-c7d04dfb.js b/plugin/console/web/assets/index-cc631905.js similarity index 97% rename from plugin/console/web/assets/index-c7d04dfb.js rename to plugin/console/web/assets/index-cc631905.js index 899b80f..a1d2d45 100644 --- a/plugin/console/web/assets/index-c7d04dfb.js +++ b/plugin/console/web/assets/index-cc631905.js @@ -1 +1 @@ -import{s as e,o as l}from"./index-93e74700.js";function m(t){return e({url:"/api/instance/list",method:"post",data:t})}function h(t){return e({url:"/api/instance/add",method:"post",data:t})}function f(t){return e({url:"/api/instance/update",method:"post",data:t})}function g(t){return e({url:"/api/instance/del",method:"post",data:t})}function S(t){return new EventSource(l+"/api/summary/sse?m7sid="+t)}function $(t){return e({url:"/api/stream/list"})}function P(t,s){const r=`/api/subscribers/${s}`;return e({url:r})}function p(t){return e({url:"/api/sysinfo"})}function b(t,s){const r=`/api/stream/info/${s}`;return e({url:r})}function y(t,s){const r=`/api/stream/annexb/${s}`;return e({url:r,responseType:"arraybuffer"})}function k(t,s,r){const n=`/api/${r}track/snap/${s}`;return e({url:n})}function I(t,s="global",r=!1){return e({url:`/api/config/${r?"json":"get"}/${s}`,method:"post",headers:{m7sid:t}})}async function M(t,s,r,n="http"){const{localIP:a}=await p(),{ip:o}=await e({url:"/api/instance/detail",method:"post",data:{id:t}}),u=await e({url:"/api/config/json/global",method:"post",headers:{m7sid:t}}),{listenaddr:i,listenaddrtls:c}=u.http;return`${n}${r?"s":""}://${s?a:o}${r?c:i}`}function T(t,s,r="global"){return e({url:`/api/config/modify/${r}`,method:"post",headers:{m7sid:t},data:s})}function L(t){return e({url:"/api/plugins",method:"post",headers:{m7sid:t}})}function w(t){return e({url:"/logrotate/api/list"})}function x(t,s){return e({url:"/monitor/api/list/track?"+new URLSearchParams({streamPath:s}),method:"post",headers:{m7sid:t}})}function C(t,s){return e({url:"/monitor/"+s,method:"post",headers:{m7sid:t}})}function H(t,s){return e({url:"/api/startDebug",method:"post",headers:{m7sid:t,path:s}})}function O(t,s){return e({url:`/stress/api/pull/${s.protocol}/${s.pullCount}`,method:"post",headers:{m7sid:t,"M7s-Method":"POST"},data:{remoteURL:s.remoteURL}})}function j(t,s){return e({url:`/stress/api/push/${s.protocol}/${s.pushCount}`,method:"post",headers:{m7sid:t,"M7s-Method":"POST"},data:{remoteHost:s.remoteHost,streamPath:s.streamPath}})}function v(t){return e({url:"/stress/api/stop/push",method:"post",headers:{m7sid:t,"M7s-Method":"POST"}})}function R(t){return e({url:"/stress/api/stop/pull",method:"post",headers:{m7sid:t,"M7s-Method":"POST"}})}function U(t){return e({url:"/stress/api/count",method:"post",headers:{m7sid:t}})}function A(t){return e({url:"/api/task/tree"})}function D(t){return e({url:"/monitor/api/session/list"})}function E(t,s){return e({url:"/monitor/api/search/task",method:"post",data:s})}export{f as A,S as a,I as b,D as c,$ as d,b as e,y as f,p as g,k as h,P as i,w as j,M as k,C as l,T as m,x as n,j as o,H as p,O as q,U as r,E as s,A as t,v as u,R as v,L as w,m as x,g as y,h as z}; +import{s as e,o as l}from"./index-c14b60e2.js";function m(t){return e({url:"/api/instance/list",method:"post",data:t})}function h(t){return e({url:"/api/instance/add",method:"post",data:t})}function f(t){return e({url:"/api/instance/update",method:"post",data:t})}function g(t){return e({url:"/api/instance/del",method:"post",data:t})}function S(t){return new EventSource(l+"/api/summary/sse?m7sid="+t)}function $(t){return e({url:"/api/stream/list"})}function P(t,s){const r=`/api/subscribers/${s}`;return e({url:r})}function p(t){return e({url:"/api/sysinfo"})}function b(t,s){const r=`/api/stream/info/${s}`;return e({url:r})}function y(t,s){const r=`/api/stream/annexb/${s}`;return e({url:r,responseType:"arraybuffer"})}function k(t,s,r){const n=`/api/${r}track/snap/${s}`;return e({url:n})}function I(t,s="global",r=!1){return e({url:`/api/config/${r?"json":"get"}/${s}`,method:"post",headers:{m7sid:t}})}async function M(t,s,r,n="http"){const{localIP:a}=await p(),{ip:o}=await e({url:"/api/instance/detail",method:"post",data:{id:t}}),u=await e({url:"/api/config/json/global",method:"post",headers:{m7sid:t}}),{listenaddr:i,listenaddrtls:c}=u.http;return`${n}${r?"s":""}://${s?a:o}${r?c:i}`}function T(t,s,r="global"){return e({url:`/api/config/modify/${r}`,method:"post",headers:{m7sid:t},data:s})}function L(t){return e({url:"/api/plugins",method:"post",headers:{m7sid:t}})}function w(t){return e({url:"/logrotate/api/list"})}function x(t,s){return e({url:"/monitor/api/list/track?"+new URLSearchParams({streamPath:s}),method:"post",headers:{m7sid:t}})}function C(t,s){return e({url:"/monitor/"+s,method:"post",headers:{m7sid:t}})}function H(t,s){return e({url:"/api/startDebug",method:"post",headers:{m7sid:t,path:s}})}function O(t,s){return e({url:`/stress/api/pull/${s.protocol}/${s.pullCount}`,method:"post",headers:{m7sid:t,"M7s-Method":"POST"},data:{remoteURL:s.remoteURL}})}function j(t,s){return e({url:`/stress/api/push/${s.protocol}/${s.pushCount}`,method:"post",headers:{m7sid:t,"M7s-Method":"POST"},data:{remoteHost:s.remoteHost,streamPath:s.streamPath}})}function v(t){return e({url:"/stress/api/stop/push",method:"post",headers:{m7sid:t,"M7s-Method":"POST"}})}function R(t){return e({url:"/stress/api/stop/pull",method:"post",headers:{m7sid:t,"M7s-Method":"POST"}})}function U(t){return e({url:"/stress/api/count",method:"post",headers:{m7sid:t}})}function A(t){return e({url:"/api/task/tree"})}function D(t){return e({url:"/monitor/api/session/list"})}function E(t,s){return e({url:"/monitor/api/search/task",method:"post",data:s})}export{f as A,S as a,I as b,D as c,$ as d,b as e,y as f,p as g,k as h,P as i,w as j,M as k,C as l,T as m,x as n,j as o,H as p,O as q,U as r,E as s,A as t,v as u,R as v,L as w,m as x,g as y,h as z}; diff --git a/plugin/console/web/assets/index-63e1a409.js b/plugin/console/web/assets/index-d83799ce.js similarity index 97% rename from plugin/console/web/assets/index-63e1a409.js rename to plugin/console/web/assets/index-d83799ce.js index 6c8ed73..809542c 100644 --- a/plugin/console/web/assets/index-63e1a409.js +++ b/plugin/console/web/assets/index-d83799ce.js @@ -1 +1 @@ -import{_ as B,i as C,r as v,b as F}from"./index-93e74700.js";import{K as E}from"./vendor-ec30964e.js";const i=u=>(Vue.pushScopeId("data-v-841a25ca"),u=u(),Vue.popScopeId(),u),h={class:"view-account"},D=i(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),g={class:"view-account-container"},N=i(()=>Vue.createElementVNode("div",{class:"view-account-top"},[Vue.createElementVNode("div",{class:"view-account-top-logo"},[Vue.createElementVNode("img",{src:F,alt:""}),Vue.createElementVNode("h2",{class:"title"},"Monibuca")])],-1)),w={class:"view-account-form"},x={class:"view-account-top-desc"},b=Vue.defineComponent({setup(u){const{t:n}=C.global,s=Vue.ref(),c=naive.useMessage(),d=Vue.ref(!1),t=Vue.reactive({mail:""}),V={mail:{required:!0,message:n("请输入邮箱"),trigger:"blur"}},_=e=>{e.preventDefault(),s.value.validate(async o=>{if(o)c.error(n("重置密码失败,请稍后再试"));else{const{mail:a}=t;v({mail:a}).then(()=>{c.info(n("重置密码成功,请登录邮箱查看重置密码,并进行激活"))})}})};return(e,o)=>{const a=Vue.resolveComponent("n-icon"),r=Vue.resolveComponent("n-input"),l=Vue.resolveComponent("n-form-item"),m=Vue.resolveComponent("n-button"),p=Vue.resolveComponent("n-form");return Vue.openBlock(),Vue.createElementBlock("div",h,[D,Vue.createElementVNode("div",g,[N,Vue.createElementVNode("div",w,[Vue.createVNode(p,{ref_key:"formRef",ref:s,"label-placement":"left",size:"large",model:Vue.unref(t),rules:V},{default:Vue.withCtx(()=>[Vue.createVNode(l,{path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(r,{value:Vue.unref(t).mail,"onUpdate:value":o[0]||(o[0]=f=>Vue.unref(t).mail=f),placeholder:e.$t("请输入邮箱")},{prefix:Vue.withCtx(()=>[Vue.createVNode(a,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(E))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(l,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{type:"primary",onClick:_,size:"large",loading:d.value,block:""},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("重置密码")),1)]),_:1},8,["loading"])]),_:1}),Vue.createElementVNode("div",x,Vue.toDisplayString(e.$t("点击重置密码后,请到绑定邮箱中查看重置密码,并点击链接进行激活")),1)]),_:1},8,["model"])])])])}}}),S=B(b,[["__scopeId","data-v-841a25ca"]]);export{S as default}; +import{_ as B,i as C,r as v,b as F}from"./index-c14b60e2.js";import{K as E}from"./vendor-ec30964e.js";const i=u=>(Vue.pushScopeId("data-v-841a25ca"),u=u(),Vue.popScopeId(),u),h={class:"view-account"},D=i(()=>Vue.createElementVNode("div",{class:"view-account-header"},null,-1)),g={class:"view-account-container"},N=i(()=>Vue.createElementVNode("div",{class:"view-account-top"},[Vue.createElementVNode("div",{class:"view-account-top-logo"},[Vue.createElementVNode("img",{src:F,alt:""}),Vue.createElementVNode("h2",{class:"title"},"Monibuca")])],-1)),w={class:"view-account-form"},x={class:"view-account-top-desc"},b=Vue.defineComponent({setup(u){const{t:n}=C.global,s=Vue.ref(),c=naive.useMessage(),d=Vue.ref(!1),t=Vue.reactive({mail:""}),V={mail:{required:!0,message:n("请输入邮箱"),trigger:"blur"}},_=e=>{e.preventDefault(),s.value.validate(async o=>{if(o)c.error(n("重置密码失败,请稍后再试"));else{const{mail:a}=t;v({mail:a}).then(()=>{c.info(n("重置密码成功,请登录邮箱查看重置密码,并进行激活"))})}})};return(e,o)=>{const a=Vue.resolveComponent("n-icon"),r=Vue.resolveComponent("n-input"),l=Vue.resolveComponent("n-form-item"),m=Vue.resolveComponent("n-button"),p=Vue.resolveComponent("n-form");return Vue.openBlock(),Vue.createElementBlock("div",h,[D,Vue.createElementVNode("div",g,[N,Vue.createElementVNode("div",w,[Vue.createVNode(p,{ref_key:"formRef",ref:s,"label-placement":"left",size:"large",model:Vue.unref(t),rules:V},{default:Vue.withCtx(()=>[Vue.createVNode(l,{path:"mail"},{default:Vue.withCtx(()=>[Vue.createVNode(r,{value:Vue.unref(t).mail,"onUpdate:value":o[0]||(o[0]=f=>Vue.unref(t).mail=f),placeholder:e.$t("请输入邮箱")},{prefix:Vue.withCtx(()=>[Vue.createVNode(a,{size:"18",color:"#808695"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(E))]),_:1})]),_:1},8,["value","placeholder"])]),_:1}),Vue.createVNode(l,null,{default:Vue.withCtx(()=>[Vue.createVNode(m,{type:"primary",onClick:_,size:"large",loading:d.value,block:""},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.$t("重置密码")),1)]),_:1},8,["loading"])]),_:1}),Vue.createElementVNode("div",x,Vue.toDisplayString(e.$t("点击重置密码后,请到绑定邮箱中查看重置密码,并点击链接进行激活")),1)]),_:1},8,["model"])])])])}}}),S=B(b,[["__scopeId","data-v-841a25ca"]]);export{S as default}; diff --git a/plugin/console/web/assets/index-f89cf332.js b/plugin/console/web/assets/index-eabbb46f.js similarity index 95% rename from plugin/console/web/assets/index-f89cf332.js rename to plugin/console/web/assets/index-eabbb46f.js index dd83067..0647180 100644 --- a/plugin/console/web/assets/index-f89cf332.js +++ b/plugin/console/web/assets/index-eabbb46f.js @@ -1 +1 @@ -import{i as V}from"./index-93e74700.js";import{O as _}from"./vendor-ec30964e.js";const f={class:"page"},b={class:"btn"},S=Vue.defineComponent({props:{esURL:String},emits:["tick"],setup(c,{emit:l}){const v=c,{t:d}=V.global,u=localStorage.getItem("interval"),t=Vue.ref(Math.min(4,u?Number(u):4)),s=Vue.ref(!0);let e;Vue.ref([{label:d("关闭"),value:0},{label:"1s",value:1},{label:"2s",value:2},{label:"5s",value:5},{label:"10s",value:10}]);let r;const o=()=>clearInterval(r);return Vue.watchEffect(()=>{s.value?(o(),localStorage.setItem("interval",String(t.value)),t.value&&(r=setInterval(()=>l("tick"),[0,1,2,5,10][t.value]*1e3)),e==null||e.close()):(o(),e=new EventSource(v.esURL),e.onmessage=n=>{l("tick",JSON.parse(n.data))})}),Vue.onMounted(()=>{l("tick"),Vue.onUnmounted(o)}),_(()=>{e==null||e.close()}),(n,a)=>{const m=Vue.resolveComponent("n-slider"),p=Vue.resolveComponent("n-button");return Vue.openBlock(),Vue.createElementBlock("div",f,[Vue.createVNode(m,{value:t.value,"onUpdate:value":a[0]||(a[0]=i=>t.value=i),min:0,max:4,marks:{0:n.$t("关闭"),1:"1s",2:"2s",3:"5s",4:"10s"},step:"mark",style:{width:"150px"}},null,8,["value","marks"]),Vue.createElementVNode("div",b,[Vue.createVNode(p,{disabled:!s.value,size:"small",onClick:a[1]||(a[1]=i=>l("tick"))},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(n.$t("立即刷新")),1)]),_:1},8,["disabled"])])])}}});export{S as _}; +import{i as V}from"./index-c14b60e2.js";import{O as _}from"./vendor-ec30964e.js";const f={class:"page"},b={class:"btn"},S=Vue.defineComponent({props:{esURL:String},emits:["tick"],setup(c,{emit:l}){const v=c,{t:d}=V.global,u=localStorage.getItem("interval"),t=Vue.ref(Math.min(4,u?Number(u):4)),s=Vue.ref(!0);let e;Vue.ref([{label:d("关闭"),value:0},{label:"1s",value:1},{label:"2s",value:2},{label:"5s",value:5},{label:"10s",value:10}]);let r;const o=()=>clearInterval(r);return Vue.watchEffect(()=>{s.value?(o(),localStorage.setItem("interval",String(t.value)),t.value&&(r=setInterval(()=>l("tick"),[0,1,2,5,10][t.value]*1e3)),e==null||e.close()):(o(),e=new EventSource(v.esURL),e.onmessage=n=>{l("tick",JSON.parse(n.data))})}),Vue.onMounted(()=>{l("tick"),Vue.onUnmounted(o)}),_(()=>{e==null||e.close()}),(n,a)=>{const m=Vue.resolveComponent("n-slider"),p=Vue.resolveComponent("n-button");return Vue.openBlock(),Vue.createElementBlock("div",f,[Vue.createVNode(m,{value:t.value,"onUpdate:value":a[0]||(a[0]=i=>t.value=i),min:0,max:4,marks:{0:n.$t("关闭"),1:"1s",2:"2s",3:"5s",4:"10s"},step:"mark",style:{width:"150px"}},null,8,["value","marks"]),Vue.createElementVNode("div",b,[Vue.createVNode(p,{disabled:!s.value,size:"small",onClick:a[1]||(a[1]=i=>l("tick"))},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(n.$t("立即刷新")),1)]),_:1},8,["disabled"])])])}}});export{S as _}; diff --git a/plugin/console/web/assets/index-fee810d7.js b/plugin/console/web/assets/index-fd264133.js similarity index 98% rename from plugin/console/web/assets/index-fee810d7.js rename to plugin/console/web/assets/index-fd264133.js index 0d9135e..afc62ad 100644 --- a/plugin/console/web/assets/index-fee810d7.js +++ b/plugin/console/web/assets/index-fd264133.js @@ -1 +1 @@ -import{l as R,O as U}from"./vendor-ec30964e.js";import{g as I,a as L}from"./index-c7d04dfb.js";import{s as z}from"./index-de28ae1e.js";import{_ as M,c as H}from"./index-93e74700.js";const w=Vue.defineComponent({props:{value:null},setup(S){const m=S,t=Vue.ref(),r=[],f=["red","blue","green","yellow"],v=Vue.ref(null);return Vue.onMounted(()=>{const V=t.value,i=window.devicePixelRatio||1,N=v.value.clientWidth,C=v.value.clientHeight;V.width=N*i,V.height=C*i;const g=V.getContext("2d");g.scale(i,i),g.imageSmoothingEnabled=!0;const p=new z.TimelineGraphView(t.value);let y=0;Vue.watchEffect(()=>{const s=Date.now();s!=y&&(m.value.forEach((n,d)=>{r[d]||(r[d]=new z.TimelineDataSeries,r[d].setColor(f[d]),p.addDataSeries(r[d])),r[d].addPoint(s,n)}),p.updateEndDate(),y=s)})}),(V,i)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:"canvas-container",ref_key:"canvasContainer",ref:v},[Vue.createElementVNode("canvas",{ref_key:"canvas",ref:t,class:"canvas"},null,512)],512))}});const O={class:"console"},q={class:"flex"},J={class:"flex",style:{"margin-top":"10px"}},K={class:"1",style:{"margin-top":"10px"}},Q={class:"py-1 px-1 flex justify-between"},X={class:"py-1 px-1 flex justify-between"},Y={class:"py-1 px-1 flex justify-between"},Z={class:"py-1 px-1 flex justify-between"},ee={class:"py-1 px-1 flex justify-between"},te={class:"mt-4"},ue={style:{width:"20%"}},le={style:{width:"20%"}},oe={style:{width:"20%"}},ne={style:{width:"20%"}},ae={style:{width:"20%"}},re={style:{display:"flex","margin-top":"10px"}},se=Vue.defineComponent({setup(S){const m=Vue.ref(!0),t=Vue.ref({}),r=1024*1024,f=1024*r,v=1024*f,V=Vue.ref(new Date),i=Vue.ref([]),N=Vue.ref([]),C=Vue.ref([]),g=Vue.ref([]);function p(e){return e>v?(e/v).toFixed(2)+" pb":e>f?(e/f).toFixed(2)+" gb":e>r?(e/r).toFixed(2)+" mb":e>1024?(e/1024).toFixed(2)+" kb":e.toString()+" b"}const y=R().params.id;let s;const n=Vue.ref({});Vue.onMounted(async()=>{n.value=await I(),console.log(n.value),V.value=new Date(n.value.startTime),s=L(y),s.onmessage=W}),U(()=>{s==null||s.close()});function d(e){H.push({name:"instance_config",params:{id:y},query:{name:e}})}async function W(e){var u,b;const o=JSON.parse(e.data);i.value=[o.cpuUsage||0,((u=o.hardDisk)==null?void 0:u.usage)||0,((b=o.memory)==null?void 0:b.usage)||0],N.value=[o.streamCount||0,o.subscribeCount||0,o.pullCount||0,o.pushCount||0],o.netWork=(o.netWork||[]).filter(c=>c.receive>0&&c.sent>0),t.value=o,g.value=o.netWork.map(c=>c.receiveSpeed||0),C.value=o.netWork.map(c=>c.sentSpeed||0),m.value=!1}return(e,o)=>{const u=Vue.resolveComponent("n-statistic"),b=Vue.resolveComponent("n-time"),c=Vue.resolveComponent("n-button"),A=Vue.resolveComponent("n-scrollbar"),h=Vue.resolveComponent("NCard"),_=Vue.resolveComponent("n-grid-item"),E=Vue.resolveComponent("n-space"),x=Vue.resolveComponent("n-skeleton"),k=Vue.resolveComponent("n-progress"),T=Vue.resolveComponent("n-grid"),j=Vue.resolveComponent("n-table"),F=Vue.resolveComponent("n-card"),P=Vue.resolveComponent("n-tab-pane"),G=Vue.resolveComponent("n-tabs");return Vue.openBlock(),Vue.createElementBlock("div",O,[Vue.createVNode(T,{cols:"1 s:2 m:3 l:3 xl:3 2xl:3",responsive:"screen","x-gap":12,"y-gap":8},{default:Vue.withCtx(()=>[Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("基本信息"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(A,{style:{height:"253px"}},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",q,[Vue.createVNode(u,{style:{width:"33%"},value:n.value.version,label:e.$t("版本号"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{style:{width:"33%"},label:e.$t("启动时间"),"theme-overrides":{valueFontSize:"18px"}},{default:Vue.withCtx(()=>[Vue.createVNode(b,{time:V.value,type:"relative"},null,8,["time"])]),_:1},8,["label"]),Vue.createVNode(u,{style:{width:"33%"},value:n.value.goVersion,label:"Go"+e.$t("版本"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]),Vue.createElementVNode("div",J,[Vue.createVNode(u,{style:{width:"33%"},value:n.value.os,label:e.$t("操作系统"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{style:{width:"33%"},value:n.value.arch,label:e.$t("架构"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{style:{width:"33%"},value:n.value.cpus,label:e.$t("核心数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]),Vue.createElementVNode("div",K,[Vue.createVNode(u,{label:e.$t("插件"),"theme-overrides":{valueFontSize:"18px"}},{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(n.value.plugins,l=>(Vue.openBlock(),Vue.createBlock(c,{style:{"margin-right":"10px","margin-bottom":"10px"},secondary:"",round:"",size:"small",onClick:a=>d(l.name),key:l.name,type:"tertiary",disabled:l.disabled},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(l.name),1)]),_:2},1032,["onClick","disabled"]))),128))]),_:1},8,["label"])])]),_:1})]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("资源使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(E,null,{default:Vue.withCtx(()=>{var l,a,B,D,$;return[Vue.createVNode(u,{value:(((l=t.value.cpuUsage)==null?void 0:l.toFixed(2))||0)+"%",label:e.$t("cpu"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:((B=(a=t.value.hardDisk)==null?void 0:a.usage)==null?void 0:B.toFixed(2))+"%",label:e.$t("硬盘"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:(($=(D=t.value.memory)==null?void 0:D.usage)==null?void 0:$.toFixed(2))+"%",label:e.$t("内存"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]}),_:1}),Vue.createElementVNode("div",Q,[Vue.createVNode(w,{value:i.value},null,8,["value"])])]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("流数量")+(t.value.streamCount||0),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(E,{justify:"space-between"},{default:Vue.withCtx(()=>[Vue.createVNode(u,{value:t.value.subscribeCount||0,label:e.$t("订阅数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:t.value.pushCount||0,label:e.$t("推送数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:t.value.pullCount||0,label:e.$t("拉取数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]),_:1}),Vue.createElementVNode("div",X,[Vue.createVNode(w,{value:N.value},null,8,["value"])])]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:"CPU "+e.$t("使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",Y,[m.value?(Vue.openBlock(),Vue.createBlock(x,{key:0,width:100,size:"medium"})):(Vue.openBlock(),Vue.createBlock(k,{key:1,type:"dashboard",color:"red","gap-position":"bottom",percentage:(t.value.cpuUsage||0)>>0},null,8,["percentage"]))])]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("内存使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>{var l;return[Vue.createElementVNode("div",Z,[m.value?(Vue.openBlock(),Vue.createBlock(x,{key:0,width:100,size:"medium"})):(Vue.openBlock(),Vue.createBlock(k,{key:1,type:"dashboard","gap-position":"bottom",percentage:(((l=t.value.memory)==null?void 0:l.usage)||0)>>0},null,8,["percentage"]))])]}),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("硬盘使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>{var l;return[Vue.createElementVNode("div",ee,[m.value?(Vue.openBlock(),Vue.createBlock(x,{key:0,width:100,size:"medium"})):(Vue.openBlock(),Vue.createBlock(k,{key:1,color:"green",type:"dashboard","gap-position":"bottom",percentage:(((l=t.value.hardDisk)==null?void 0:l.usage)||0)>>0},null,8,["percentage"]))])]}),_:1},8,["title"])]),_:1})]),_:1}),Vue.createElementVNode("div",te,[Vue.createVNode(F,{"content-style":"padding: 0;",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(G,{type:"line",size:"large","tabs-padding":20,"pane-style":"padding: 20px;"},{default:Vue.withCtx(()=>[Vue.createVNode(P,{name:e.$t("网络"),class:"pane"},{default:Vue.withCtx(()=>{var l;return[Vue.createElementVNode("div",null,[Vue.createVNode(j,{"single-line":!1,bordered:!0,style:Vue.normalizeStyle({height:`${((l=t.value.netWork)==null?void 0:l.length)*50}px`})},{default:Vue.withCtx(()=>[Vue.createElementVNode("thead",null,[Vue.createElementVNode("tr",null,[Vue.createElementVNode("th",ue,Vue.toDisplayString(e.$t("网卡")),1),Vue.createElementVNode("th",le,Vue.toDisplayString(e.$t("接收总"))+" bits",1),Vue.createElementVNode("th",oe,Vue.toDisplayString(e.$t("发送总"))+" bits",1),Vue.createElementVNode("th",ne,Vue.toDisplayString(e.$t("接收速率")),1),Vue.createElementVNode("th",ae,Vue.toDisplayString(e.$t("发送速率")),1)])]),Vue.createElementVNode("tbody",null,[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.value.netWork,a=>(Vue.openBlock(),Vue.createElementBlock("tr",{key:a.name},[Vue.createElementVNode("td",null,Vue.toDisplayString(a.name),1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.receive||0)),1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.sent||0)),1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.receiveSpeed||0))+"/s",1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.sentSpeed||0))+"/s",1)]))),128))])]),_:1},8,["style"])]),Vue.createElementVNode("div",re,[Vue.createVNode(F,{style:{"margin-right":"10px"},title:e.$t("接收速率"),size:"small",segmented:{content:!0,footer:!0}},{default:Vue.withCtx(()=>[Vue.createVNode(w,{value:g.value,style:{height:"250px"}},null,8,["value"])]),_:1},8,["title"]),Vue.createVNode(F,{title:e.$t("发送速率"),size:"small",segmented:{content:!0,footer:!0}},{default:Vue.withCtx(()=>[Vue.createVNode(w,{value:C.value,style:{height:"250px"}},null,8,["value"])]),_:1},8,["title"])])]}),_:1},8,["name"])]),_:1})]),_:1})])])}}}),pe=M(se,[["__scopeId","data-v-4ab69993"]]);export{pe as default}; +import{l as R,O as U}from"./vendor-ec30964e.js";import{g as I,a as L}from"./index-cc631905.js";import{s as z}from"./index-de28ae1e.js";import{_ as M,c as H}from"./index-c14b60e2.js";const w=Vue.defineComponent({props:{value:null},setup(S){const m=S,t=Vue.ref(),r=[],f=["red","blue","green","yellow"],v=Vue.ref(null);return Vue.onMounted(()=>{const V=t.value,i=window.devicePixelRatio||1,N=v.value.clientWidth,C=v.value.clientHeight;V.width=N*i,V.height=C*i;const g=V.getContext("2d");g.scale(i,i),g.imageSmoothingEnabled=!0;const p=new z.TimelineGraphView(t.value);let y=0;Vue.watchEffect(()=>{const s=Date.now();s!=y&&(m.value.forEach((n,d)=>{r[d]||(r[d]=new z.TimelineDataSeries,r[d].setColor(f[d]),p.addDataSeries(r[d])),r[d].addPoint(s,n)}),p.updateEndDate(),y=s)})}),(V,i)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:"canvas-container",ref_key:"canvasContainer",ref:v},[Vue.createElementVNode("canvas",{ref_key:"canvas",ref:t,class:"canvas"},null,512)],512))}});const O={class:"console"},q={class:"flex"},J={class:"flex",style:{"margin-top":"10px"}},K={class:"1",style:{"margin-top":"10px"}},Q={class:"py-1 px-1 flex justify-between"},X={class:"py-1 px-1 flex justify-between"},Y={class:"py-1 px-1 flex justify-between"},Z={class:"py-1 px-1 flex justify-between"},ee={class:"py-1 px-1 flex justify-between"},te={class:"mt-4"},ue={style:{width:"20%"}},le={style:{width:"20%"}},oe={style:{width:"20%"}},ne={style:{width:"20%"}},ae={style:{width:"20%"}},re={style:{display:"flex","margin-top":"10px"}},se=Vue.defineComponent({setup(S){const m=Vue.ref(!0),t=Vue.ref({}),r=1024*1024,f=1024*r,v=1024*f,V=Vue.ref(new Date),i=Vue.ref([]),N=Vue.ref([]),C=Vue.ref([]),g=Vue.ref([]);function p(e){return e>v?(e/v).toFixed(2)+" pb":e>f?(e/f).toFixed(2)+" gb":e>r?(e/r).toFixed(2)+" mb":e>1024?(e/1024).toFixed(2)+" kb":e.toString()+" b"}const y=R().params.id;let s;const n=Vue.ref({});Vue.onMounted(async()=>{n.value=await I(),console.log(n.value),V.value=new Date(n.value.startTime),s=L(y),s.onmessage=W}),U(()=>{s==null||s.close()});function d(e){H.push({name:"instance_config",params:{id:y},query:{name:e}})}async function W(e){var u,b;const o=JSON.parse(e.data);i.value=[o.cpuUsage||0,((u=o.hardDisk)==null?void 0:u.usage)||0,((b=o.memory)==null?void 0:b.usage)||0],N.value=[o.streamCount||0,o.subscribeCount||0,o.pullCount||0,o.pushCount||0],o.netWork=(o.netWork||[]).filter(c=>c.receive>0&&c.sent>0),t.value=o,g.value=o.netWork.map(c=>c.receiveSpeed||0),C.value=o.netWork.map(c=>c.sentSpeed||0),m.value=!1}return(e,o)=>{const u=Vue.resolveComponent("n-statistic"),b=Vue.resolveComponent("n-time"),c=Vue.resolveComponent("n-button"),A=Vue.resolveComponent("n-scrollbar"),h=Vue.resolveComponent("NCard"),_=Vue.resolveComponent("n-grid-item"),E=Vue.resolveComponent("n-space"),x=Vue.resolveComponent("n-skeleton"),k=Vue.resolveComponent("n-progress"),T=Vue.resolveComponent("n-grid"),j=Vue.resolveComponent("n-table"),F=Vue.resolveComponent("n-card"),P=Vue.resolveComponent("n-tab-pane"),G=Vue.resolveComponent("n-tabs");return Vue.openBlock(),Vue.createElementBlock("div",O,[Vue.createVNode(T,{cols:"1 s:2 m:3 l:3 xl:3 2xl:3",responsive:"screen","x-gap":12,"y-gap":8},{default:Vue.withCtx(()=>[Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("基本信息"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(A,{style:{height:"253px"}},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",q,[Vue.createVNode(u,{style:{width:"33%"},value:n.value.version,label:e.$t("版本号"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{style:{width:"33%"},label:e.$t("启动时间"),"theme-overrides":{valueFontSize:"18px"}},{default:Vue.withCtx(()=>[Vue.createVNode(b,{time:V.value,type:"relative"},null,8,["time"])]),_:1},8,["label"]),Vue.createVNode(u,{style:{width:"33%"},value:n.value.goVersion,label:"Go"+e.$t("版本"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]),Vue.createElementVNode("div",J,[Vue.createVNode(u,{style:{width:"33%"},value:n.value.os,label:e.$t("操作系统"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{style:{width:"33%"},value:n.value.arch,label:e.$t("架构"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{style:{width:"33%"},value:n.value.cpus,label:e.$t("核心数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]),Vue.createElementVNode("div",K,[Vue.createVNode(u,{label:e.$t("插件"),"theme-overrides":{valueFontSize:"18px"}},{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(n.value.plugins,l=>(Vue.openBlock(),Vue.createBlock(c,{style:{"margin-right":"10px","margin-bottom":"10px"},secondary:"",round:"",size:"small",onClick:a=>d(l.name),key:l.name,type:"tertiary",disabled:l.disabled},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(l.name),1)]),_:2},1032,["onClick","disabled"]))),128))]),_:1},8,["label"])])]),_:1})]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("资源使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(E,null,{default:Vue.withCtx(()=>{var l,a,B,D,$;return[Vue.createVNode(u,{value:(((l=t.value.cpuUsage)==null?void 0:l.toFixed(2))||0)+"%",label:e.$t("cpu"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:((B=(a=t.value.hardDisk)==null?void 0:a.usage)==null?void 0:B.toFixed(2))+"%",label:e.$t("硬盘"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:(($=(D=t.value.memory)==null?void 0:D.usage)==null?void 0:$.toFixed(2))+"%",label:e.$t("内存"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]}),_:1}),Vue.createElementVNode("div",Q,[Vue.createVNode(w,{value:i.value},null,8,["value"])])]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("流数量")+(t.value.streamCount||0),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(E,{justify:"space-between"},{default:Vue.withCtx(()=>[Vue.createVNode(u,{value:t.value.subscribeCount||0,label:e.$t("订阅数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:t.value.pushCount||0,label:e.$t("推送数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"]),Vue.createVNode(u,{value:t.value.pullCount||0,label:e.$t("拉取数"),"theme-overrides":{valueFontSize:"18px"}},null,8,["value","label"])]),_:1}),Vue.createElementVNode("div",X,[Vue.createVNode(w,{value:N.value},null,8,["value"])])]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:"CPU "+e.$t("使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",Y,[m.value?(Vue.openBlock(),Vue.createBlock(x,{key:0,width:100,size:"medium"})):(Vue.openBlock(),Vue.createBlock(k,{key:1,type:"dashboard",color:"red","gap-position":"bottom",percentage:(t.value.cpuUsage||0)>>0},null,8,["percentage"]))])]),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("内存使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>{var l;return[Vue.createElementVNode("div",Z,[m.value?(Vue.openBlock(),Vue.createBlock(x,{key:0,width:100,size:"medium"})):(Vue.openBlock(),Vue.createBlock(k,{key:1,type:"dashboard","gap-position":"bottom",percentage:(((l=t.value.memory)==null?void 0:l.usage)||0)>>0},null,8,["percentage"]))])]}),_:1},8,["title"])]),_:1}),Vue.createVNode(_,null,{default:Vue.withCtx(()=>[Vue.createVNode(h,{title:e.$t("硬盘使用"),segmented:{content:!0,footer:!0},size:"small",bordered:!1},{default:Vue.withCtx(()=>{var l;return[Vue.createElementVNode("div",ee,[m.value?(Vue.openBlock(),Vue.createBlock(x,{key:0,width:100,size:"medium"})):(Vue.openBlock(),Vue.createBlock(k,{key:1,color:"green",type:"dashboard","gap-position":"bottom",percentage:(((l=t.value.hardDisk)==null?void 0:l.usage)||0)>>0},null,8,["percentage"]))])]}),_:1},8,["title"])]),_:1})]),_:1}),Vue.createElementVNode("div",te,[Vue.createVNode(F,{"content-style":"padding: 0;",bordered:!1},{default:Vue.withCtx(()=>[Vue.createVNode(G,{type:"line",size:"large","tabs-padding":20,"pane-style":"padding: 20px;"},{default:Vue.withCtx(()=>[Vue.createVNode(P,{name:e.$t("网络"),class:"pane"},{default:Vue.withCtx(()=>{var l;return[Vue.createElementVNode("div",null,[Vue.createVNode(j,{"single-line":!1,bordered:!0,style:Vue.normalizeStyle({height:`${((l=t.value.netWork)==null?void 0:l.length)*50}px`})},{default:Vue.withCtx(()=>[Vue.createElementVNode("thead",null,[Vue.createElementVNode("tr",null,[Vue.createElementVNode("th",ue,Vue.toDisplayString(e.$t("网卡")),1),Vue.createElementVNode("th",le,Vue.toDisplayString(e.$t("接收总"))+" bits",1),Vue.createElementVNode("th",oe,Vue.toDisplayString(e.$t("发送总"))+" bits",1),Vue.createElementVNode("th",ne,Vue.toDisplayString(e.$t("接收速率")),1),Vue.createElementVNode("th",ae,Vue.toDisplayString(e.$t("发送速率")),1)])]),Vue.createElementVNode("tbody",null,[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.value.netWork,a=>(Vue.openBlock(),Vue.createElementBlock("tr",{key:a.name},[Vue.createElementVNode("td",null,Vue.toDisplayString(a.name),1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.receive||0)),1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.sent||0)),1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.receiveSpeed||0))+"/s",1),Vue.createElementVNode("td",null,Vue.toDisplayString(p(a.sentSpeed||0))+"/s",1)]))),128))])]),_:1},8,["style"])]),Vue.createElementVNode("div",re,[Vue.createVNode(F,{style:{"margin-right":"10px"},title:e.$t("接收速率"),size:"small",segmented:{content:!0,footer:!0}},{default:Vue.withCtx(()=>[Vue.createVNode(w,{value:g.value,style:{height:"250px"}},null,8,["value"])]),_:1},8,["title"]),Vue.createVNode(F,{title:e.$t("发送速率"),size:"small",segmented:{content:!0,footer:!0}},{default:Vue.withCtx(()=>[Vue.createVNode(w,{value:C.value,style:{height:"250px"}},null,8,["value"])]),_:1},8,["title"])])]}),_:1},8,["name"])]),_:1})]),_:1})])])}}}),pe=M(se,[["__scopeId","data-v-4ab69993"]]);export{pe as default}; diff --git a/plugin/console/web/assets/publish-b6395976.js b/plugin/console/web/assets/publish-a7f37544.js similarity index 98% rename from plugin/console/web/assets/publish-b6395976.js rename to plugin/console/web/assets/publish-a7f37544.js index 1480e1d..f610c1c 100644 --- a/plugin/console/web/assets/publish-b6395976.js +++ b/plugin/console/web/assets/publish-a7f37544.js @@ -1,3 +1,3 @@ -import{_ as N}from"./index-f89cf332.js";import"./index-93e74700.js";import"./vendor-ec30964e.js";const k=Vue.createTextVNode("推摄像头"),S=Vue.createTextVNode(" 推桌面"),D=Vue.createTextVNode("关闭"),T=["srcObject"],P=Vue.defineComponent({setup(b){const V=Vue.ref(""),l=Vue.ref(""),p=Vue.ref("live/test"),r=Vue.ref([]),c=Vue.ref(),m=naive.useMessage(),f=Vue.ref(""),v=Vue.ref("http://localhost:8080");navigator.mediaDevices.enumerateDevices().then(n=>{n.forEach(e=>{console.log(e.kind+": "+e.label+" id = "+e.deviceId,e),e.kind=="videoinput"&&r.value.push({label:e.label,value:e.deviceId})}),r.value.length>0&&(l.value=r.value[0].value)});async function C(){const n=await navigator.mediaDevices.getUserMedia({video:{deviceId:l.value},audio:!0});_(n)}async function w(){const n=await navigator.mediaDevices.getDisplayMedia();_(n)}let s;function h(){s==null||s()}let o;Vue.onUnmounted(h);function g(){o==null||o.getStats().then(n=>{let e="";n.forEach(a=>{e+=`${a.type} ${a.id} ${a.timestamp} +import{_ as N}from"./index-eabbb46f.js";import"./index-c14b60e2.js";import"./vendor-ec30964e.js";const k=Vue.createTextVNode("推摄像头"),S=Vue.createTextVNode(" 推桌面"),D=Vue.createTextVNode("关闭"),T=["srcObject"],P=Vue.defineComponent({setup(b){const V=Vue.ref(""),l=Vue.ref(""),p=Vue.ref("live/test"),r=Vue.ref([]),c=Vue.ref(),m=naive.useMessage(),f=Vue.ref(""),v=Vue.ref("http://localhost:8080");navigator.mediaDevices.enumerateDevices().then(n=>{n.forEach(e=>{console.log(e.kind+": "+e.label+" id = "+e.deviceId,e),e.kind=="videoinput"&&r.value.push({label:e.label,value:e.deviceId})}),r.value.length>0&&(l.value=r.value[0].value)});async function C(){const n=await navigator.mediaDevices.getUserMedia({video:{deviceId:l.value},audio:!0});_(n)}async function w(){const n=await navigator.mediaDevices.getDisplayMedia();_(n)}let s;function h(){s==null||s()}let o;Vue.onUnmounted(h);function g(){o==null||o.getStats().then(n=>{let e="";n.forEach(a=>{e+=`${a.type} ${a.id} ${a.timestamp} `,Object.keys(a).forEach(t=>{t!=="type"&&t!=="id"&&t!=="timestamp"&&(e+=` ${t}: ${a[t]} `)})}),f.value=e})}async function _(n){try{c.value=n,o=new RTCPeerConnection,o.oniceconnectionstatechange=()=>{var t;console.log("oniceconnectionstatechange",o.iceConnectionState),m.info(o.iceConnectionState),o.iceConnectionState==="disconnected"&&((t=c.value)==null||t.getTracks().forEach(u=>u.stop()),c.value=void 0)},o.onicecandidate=t=>{console.log("onicecandidate",t.candidate)},n.getTracks().forEach(t=>{o.addTrack(t,n)});const e=await o.createOffer();await o.setLocalDescription(e);const a=await fetch(`${v.value}/webrtc/push/${p.value}`,{method:"POST",mode:"cors",cache:"no-cache",credentials:"include",redirect:"follow",referrerPolicy:"no-referrer",headers:{"Content-Type":"application/sdp"},body:e.sdp});V.value=await a.text(),await o.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:V.value})),s=()=>{var t;o.close(),(t=c.value)==null||t.getTracks().forEach(u=>u.stop()),c.value=void 0}}catch(e){m.error(e.message)}}return(n,e)=>{const a=Vue.resolveComponent("n-input"),t=Vue.resolveComponent("n-select"),u=Vue.resolveComponent("n-button"),d=Vue.resolveComponent("n-space"),y=Vue.resolveComponent("n-card"),x=Vue.resolveComponent("n-split");return Vue.openBlock(),Vue.createBlock(d,{vertical:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(N),{onTick:g}),Vue.createVNode(d,null,{default:Vue.withCtx(()=>[Vue.createVNode(y,null,{default:Vue.withCtx(()=>[Vue.createVNode(d,{vertical:""},{default:Vue.withCtx(()=>[Vue.createVNode(a,{value:v.value,"onUpdate:value":e[0]||(e[0]=i=>v.value=i)},null,8,["value"]),Vue.createVNode(t,{value:l.value,"onUpdate:value":e[1]||(e[1]=i=>l.value=i),options:r.value},null,8,["value","options"]),Vue.createVNode(a,{value:p.value,"onUpdate:value":e[2]||(e[2]=i=>p.value=i)},null,8,["value"]),Vue.createVNode(d,null,{default:Vue.withCtx(()=>[Vue.createVNode(u,{onClick:C,type:"primary"},{default:Vue.withCtx(()=>[k]),_:1}),Vue.createVNode(u,{onClick:w,type:"primary"},{default:Vue.withCtx(()=>[S]),_:1}),Vue.createVNode(u,{onClick:h,type:"error"},{default:Vue.withCtx(()=>[D]),_:1})]),_:1})]),_:1})]),_:1}),Vue.createElementVNode("video",{id:"video",width:"640",height:"480",autoplay:"",muted:"",srcObject:c.value},null,8,T)]),_:1}),Vue.createVNode(x,{direction:"horizontal",max:.75,min:.25},{1:Vue.withCtx(()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(V.value),1)]),2:Vue.withCtx(()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(f.value),1)]),_:1},8,["max","min"])]),_:1})}}});export{P as default}; diff --git a/plugin/console/web/assets/subscribers-4dd1d1dd.js b/plugin/console/web/assets/subscribers-fb9b6547.js similarity index 90% rename from plugin/console/web/assets/subscribers-4dd1d1dd.js rename to plugin/console/web/assets/subscribers-fb9b6547.js index 1788ba4..f7b2169 100644 --- a/plugin/console/web/assets/subscribers-4dd1d1dd.js +++ b/plugin/console/web/assets/subscribers-fb9b6547.js @@ -1 +1 @@ -import{l as p}from"./vendor-ec30964e.js";import{B as m}from"./TableAction-b6863a0a.js";import{_}from"./index-f89cf332.js";import{i as h}from"./index-c7d04dfb.js";import{_ as F,i as V}from"./index-93e74700.js";const f=Vue.defineComponent({setup(w){const{t:u}=V.global,i=p(),{params:r}=i,o=r.id,a=Vue.ref([]),n=[{title:"ID",key:"id",width:100},{title:u("开始时间"),key:"startTime",width:100,render:t=>Vue.h(naive.NTime,{time:new Date(t.startTime),type:"relative"})},{title:u("音频状态"),width:80,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.state)}},{title:u("音频序号"),width:100,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.sequence)}},{title:u("音频时间戳"),width:100,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.timestamp)}},{title:u("音频延迟"),width:80,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.delay)}},{title:u("视频状态"),width:80,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.state)}},{title:u("视频序号"),width:100,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.sequence)}},{title:u("视频时间戳"),width:100,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.timestamp)}},{title:u("视频延迟"),width:80,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.delay)}},{title:u("元信息"),key:"meta"}];async function s(t){const e=await h(o,r.streamPath.join("/"));a.value=e.list}function d(t){console.log(t)}return(t,e)=>{const c=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(_),{onTick:s}),Vue.createVNode(c,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(m),{title:t.$t("订阅者列表"),columns:n,dataSource:a.value,pagination:!1,"row-key":l=>l.id,"onUpdate:checkedRowKeys":d,"scroll-x":1090},null,8,["title","dataSource","row-key"])]),_:1})])}}}),C=F(f,[["__scopeId","data-v-6d0a1b16"]]);export{C as default}; +import{l as p}from"./vendor-ec30964e.js";import{B as m}from"./TableAction-45c049b5.js";import{_}from"./index-eabbb46f.js";import{i as h}from"./index-cc631905.js";import{_ as F,i as V}from"./index-c14b60e2.js";const f=Vue.defineComponent({setup(w){const{t:u}=V.global,i=p(),{params:r}=i,o=r.id,a=Vue.ref([]),n=[{title:"ID",key:"id",width:100},{title:u("开始时间"),key:"startTime",width:100,render:t=>Vue.h(naive.NTime,{time:new Date(t.startTime),type:"relative"})},{title:u("音频状态"),width:80,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.state)}},{title:u("音频序号"),width:100,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.sequence)}},{title:u("音频时间戳"),width:100,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.timestamp)}},{title:u("音频延迟"),width:80,render:t=>{var e;return Vue.h("span",(e=t.audioReader)==null?void 0:e.delay)}},{title:u("视频状态"),width:80,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.state)}},{title:u("视频序号"),width:100,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.sequence)}},{title:u("视频时间戳"),width:100,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.timestamp)}},{title:u("视频延迟"),width:80,render:t=>{var e;return Vue.h("span",(e=t.videoReader)==null?void 0:e.delay)}},{title:u("元信息"),key:"meta"}];async function s(t){const e=await h(o,r.streamPath.join("/"));a.value=e.list}function d(t){console.log(t)}return(t,e)=>{const c=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(_),{onTick:s}),Vue.createVNode(c,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(m),{title:t.$t("订阅者列表"),columns:n,dataSource:a.value,pagination:!1,"row-key":l=>l.id,"onUpdate:checkedRowKeys":d,"scroll-x":1090},null,8,["title","dataSource","row-key"])]),_:1})])}}}),C=F(f,[["__scopeId","data-v-6d0a1b16"]]);export{C as default}; diff --git a/plugin/console/web/assets/track-49cc82f4.js b/plugin/console/web/assets/track-5d859b4c.js similarity index 99% rename from plugin/console/web/assets/track-49cc82f4.js rename to plugin/console/web/assets/track-5d859b4c.js index 66080d6..7e5ba1e 100644 --- a/plugin/console/web/assets/track-49cc82f4.js +++ b/plugin/console/web/assets/track-5d859b4c.js @@ -1 +1 @@ -import{l as be}from"./vendor-ec30964e.js";import{B as xe,f as we}from"./TableAction-b6863a0a.js";import{_ as Se}from"./index-f89cf332.js";import{_ as _e,i as Ce}from"./index-93e74700.js";import{h as Ve}from"./index-c7d04dfb.js";import{_ as E,Y as oe,o as le,J as ue,Z as Pe,P as ce,$ as U,a0 as De,y as he,w as de,a1 as Ie,a2 as ke,a3 as z,u as O,a4 as Le,a5 as Te,a6 as q,G as Me,a7 as Oe,h as X,C as Ee,a8 as ve,v as pe,a9 as Re,aa as Ne,ab as Be,ac as Fe,ad as ze,l as $e,ae as We,af as ge,ag as fe,ah as Ge,q as Ye,ai as Xe,aj as He,K as Ue,L as Z,N as qe,O as Ze,Q as je,U as Je,V as Ke,W as Qe,X as et}from"./installCanvasRenderer-cb1ba546.js";import{d as tt,i as rt,a as at}from"./install-c0cf116b.js";import{i as it}from"./install-40c3b04b.js";var me=function(i){E(r,i);function r(){var e=i!==null&&i.apply(this,arguments)||this;return e.type=r.type,e}return r.prototype.getInitialData=function(e,t){return oe(null,this,{useEncodeDefaulter:!0})},r.prototype.getMarkerPosition=function(e,t,a){var n=this.coordinateSystem;if(n&&n.clampData){var l=n.clampData(e),u=n.dataToPoint(l);if(a)le(n.getAxes(),function(m,g){if(m.type==="category"&&t!=null){var y=m.getTicksCoords(),v=l[g],S=t[g]==="x1"||t[g]==="y1";if(S&&(v+=1),y.length<2)return;if(y.length===2){u[g]=m.toGlobalCoord(m.getExtent()[S?1:0]);return}for(var b=void 0,x=void 0,d=1,f=0;fv){x=(_+b)/2;break}f===1&&(d=w-y[0].tickValue)}x==null&&(b?b&&(x=y[y.length-1].coord):x=y[0].coord),u[g]=m.toGlobalCoord(x)}});else{var c=this.getData(),s=c.getLayout("offset"),o=c.getLayout("size"),h=n.getBaseAxis().isHorizontal()?0:1;u[h]+=s+o/2}return u}return[NaN,NaN]},r.type="series.__base_bar__",r.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},r}(ue);ue.registerClass(me);const j=me;var nt=function(i){E(r,i);function r(){var e=i!==null&&i.apply(this,arguments)||this;return e.type=r.type,e}return r.prototype.getInitialData=function(){return oe(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},r.prototype.getProgressive=function(){return this.get("large")?this.get("progressive"):!1},r.prototype.getProgressiveThreshold=function(){var e=this.get("progressiveThreshold"),t=this.get("largeThreshold");return t>e&&(e=t),e},r.prototype.brushSelector=function(e,t,a){return a.rect(t.getItemLayout(e))},r.type="series.bar",r.dependencies=["grid","polar"],r.defaultOption=Pe(j.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),r}(j);const st=nt;var ot=function(){function i(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return i}(),lt=function(i){E(r,i);function r(e){var t=i.call(this,e)||this;return t.type="sausage",t}return r.prototype.getDefaultShape=function(){return new ot},r.prototype.buildPath=function(e,t){var a=t.cx,n=t.cy,l=Math.max(t.r0||0,0),u=Math.max(t.r,0),c=(u-l)*.5,s=l+c,o=t.startAngle,h=t.endAngle,m=t.clockwise,g=Math.PI*2,y=m?h-oMath.PI/2&&ou)return!0;u=h}return!1},r.prototype._isOrderDifferentInView=function(e,t){for(var a=t.scale,n=a.getExtent(),l=Math.max(0,n[0]),u=Math.min(n[1],a.getOrdinalMeta().categories.length-1);l<=u;++l)if(e.ordinalNumbers[l]!==a.getRawOrdinalNumber(l))return!0},r.prototype._updateSortWithinSameData=function(e,t,a,n){if(this._isOrderChangedWithinSameData(e,t,a)){var l=this._dataSort(e,a,t);this._isOrderDifferentInView(l,a)&&(this._removeOnRenderedListener(n),n.dispatchAction({type:"changeAxisOrder",componentType:a.dim+"Axis",axisId:a.index,sortInfo:l}))}},r.prototype._dispatchInitSort=function(e,t,a){var n=t.baseAxis,l=this._dataSort(e,n,function(u){return e.get(e.mapDimension(t.otherAxis.dim),u)});a.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",isInitSort:!0,axisId:n.index,sortInfo:l})},r.prototype.remove=function(e,t){this._clear(this._model),this._removeOnRenderedListener(t)},r.prototype.dispose=function(e,t){this._removeOnRenderedListener(t)},r.prototype._removeOnRenderedListener=function(e){this._onRendered&&(e.getZr().off("rendered",this._onRendered),this._onRendered=null)},r.prototype._clear=function(e){var t=this.group,a=this._data;e&&e.isAnimationEnabled()&&a&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],a.eachItemGraphicEl(function(n){q(n,e,X(n).dataIndex)})):t.removeAll(),this._data=null,this._isFirstFrame=!0},r.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},r.type="bar",r}(Ee),K={cartesian2d:function(i,r){var e=r.width<0?-1:1,t=r.height<0?-1:1;e<0&&(r.x+=r.width,r.width=-r.width),t<0&&(r.y+=r.height,r.height=-r.height);var a=i.x+i.width,n=i.y+i.height,l=G(r.x,i.x),u=Y(r.x+r.width,a),c=G(r.y,i.y),s=Y(r.y+r.height,n),o=ua?u:l,r.y=h&&c>n?s:c,r.width=o?0:u-l,r.height=h?0:s-c,e<0&&(r.x+=r.width,r.width=-r.width),t<0&&(r.y+=r.height,r.height=-r.height),o||h},polar:function(i,r){var e=r.r0<=r.r?1:-1;if(e<0){var t=r.r;r.r=r.r0,r.r0=t}var a=Y(r.r,i.r),n=G(r.r0,i.r0);r.r=a,r.r0=n;var l=a-n<0;if(e<0){var t=r.r;r.r=r.r0,r.r0=t}return l}},Q={cartesian2d:function(i,r,e,t,a,n,l,u,c){var s=new ve({shape:pe({},t),z2:1});if(s.__dataIndex=e,s.name="item",n){var o=s.shape,h=a?"height":"width";o[h]=0}return s},polar:function(i,r,e,t,a,n,l,u,c){var s=!a&&c?J:fe,o=new s({shape:t,z2:1});o.name="item";var h=ye(a);if(o.calculateTextPosition=ut(h,{isRoundCap:s===J}),n){var m=o.shape,g=a?"r":"endAngle",y={};m[g]=a?t.r0:t.startAngle,y[g]=t[g],(u?O:z)(o,{shape:y},n)}return o}};function pt(i,r){var e=i.get("realtimeSort",!0),t=r.getBaseAxis();if(e&&t.type==="category"&&r.type==="cartesian2d")return{baseAxis:t,otherAxis:r.getOtherAxis(t)}}function ee(i,r,e,t,a,n,l,u){var c,s;n?(s={x:t.x,width:t.width},c={y:t.y,height:t.height}):(s={y:t.y,height:t.height},c={x:t.x,width:t.width}),u||(l?O:z)(e,{shape:c},r,a,null);var o=r?i.baseAxis.model:null;(l?O:z)(e,{shape:s},o,a)}function te(i,r){for(var e=0;e0?1:-1,l=t.height>0?1:-1;return{x:t.x+n*a/2,y:t.y+l*a/2,width:t.width-n*a,height:t.height-l*a}},polar:function(i,r,e){var t=i.getItemLayout(r);return{cx:t.cx,cy:t.cy,r0:t.r0,r:t.r,startAngle:t.startAngle,endAngle:t.endAngle,clockwise:t.clockwise}}};function mt(i){return i.startAngle!=null&&i.endAngle!=null&&i.startAngle===i.endAngle}function ye(i){return function(r){var e=r?"Arc":"Angle";return function(t){switch(t){case"start":case"insideStart":case"end":case"insideEnd":return t+e;default:return t}}}(i)}function ae(i,r,e,t,a,n,l,u){var c=r.getItemVisual(e,"style");if(u){if(!n.get("roundCap")){var o=i.shape,h=ht(t.getModel("itemStyle"),o,!0);pe(o,h),i.setShape(o)}}else{var s=t.get(["itemStyle","borderRadius"])||0;i.setShape("r",s)}i.useStyle(c);var m=t.getShallow("cursor");m&&i.attr("cursor",m);var g=u?l?a.r>=a.r0?"endArc":"startArc":a.endAngle>=a.startAngle?"endAngle":"startAngle":l?a.height>=0?"bottom":"top":a.width>=0?"right":"left",y=Re(t);Ne(i,y,{labelFetcher:n,labelDataIndex:e,defaultText:Be(n.getData(),e),inheritColor:c.fill,defaultOpacity:c.opacity,defaultOutsidePosition:g});var v=i.getTextContent();if(u&&v){var S=t.get(["label","position"]);i.textConfig.inside=S==="middle"?!0:null,ct(i,S==="outside"?g:S,ye(l),t.get(["label","rotate"]))}Fe(v,y,n.getRawValue(e),function(x){return Ge(r,x)});var b=t.getModel(["emphasis"]);ze(i,b.get("focus"),b.get("blurScope"),b.get("disabled")),$e(i,t),mt(a)&&(i.style.fill="none",i.style.stroke="none",le(i.states,function(x){x.style&&(x.style.fill=x.style.stroke="none")}))}function yt(i,r){var e=i.get(["itemStyle","borderColor"]);if(!e||e==="none")return 0;var t=i.get(["itemStyle","borderWidth"])||0,a=isNaN(r.width)?Number.MAX_VALUE:Math.abs(r.width),n=isNaN(r.height)?Number.MAX_VALUE:Math.abs(r.height);return Math.min(t,a,n)}var At=function(){function i(){}return i}(),ie=function(i){E(r,i);function r(e){var t=i.call(this,e)||this;return t.type="largeBar",t}return r.prototype.getDefaultShape=function(){return new At},r.prototype.buildPath=function(e,t){for(var a=t.points,n=this.baseDimIdx,l=1-this.baseDimIdx,u=[],c=[],s=this.barWidth,o=0;o=0?e:null},30,!1);function bt(i,r,e){for(var t=i.baseDimIdx,a=1-t,n=i.shape.points,l=i.largeDataIndices,u=[],c=[],s=i.barWidth,o=0,h=n.length/3;o=u[0]&&r<=u[0]+c[0]&&e>=u[1]&&e<=u[1]+c[1])return l[o]}return-1}function Ae(i,r,e){if(ge(e,"cartesian2d")){var t=r,a=e.getArea();return{x:i?t.x:a.x,y:i?a.y:t.y,width:i?t.width:a.width,height:i?a.height:t.height}}else{var a=e.getArea(),n=r;return{cx:a.cx,cy:a.cy,r0:i?a.r0:n.r0,r:i?a.r:n.r,startAngle:i?n.startAngle:0,endAngle:i?n.endAngle:Math.PI*2}}}function xt(i,r,e){var t=i.type==="polar"?fe:ve;return new t({shape:Ae(r,e,i),silent:!0,z2:0})}const wt=vt;function St(i){i.registerChartView(wt),i.registerSeriesModel(st),i.registerLayout(i.PRIORITY.VISUAL.LAYOUT,Ye(He,"bar")),i.registerLayout(i.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Xe("bar")),i.registerProcessor(i.PRIORITY.PROCESSOR.STATISTIC,tt("bar")),i.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},function(r,e){var t=r.componentType||"series";e.eachComponent({mainType:t,query:r},function(a){r.sortInfo&&a.axis.setCategorySortInfo(r.sortInfo)})})}const _t={class:"events"},Ct={key:0,class:"memorys"},Vt=Vue.defineComponent({setup(i){Ue([St,it,qe,rt,at,Ze,je,Je,Ke,Qe,et]);const{t:r}=Ce.global,e=be(),{params:t,name:a}=e,n=a.split("_").pop(),l=t.id,u=t.streamPath,c=naive.useMessage(),s=naive.useThemeVars(),o=Vue.ref([{title:r("序号"),key:"sequence",width:100},{title:r("时间戳"),key:"timestamp",width:150},{title:r("写入时间"),key:"writeTime",width:150,render:d=>Vue.h(naive.NTime,{time:new Date(d.writeTime),format:"HH:mm:ss.SSS"})},{title:r("帧大小"),key:"wrap",width:100,render:d=>{var f;return Vue.h("span",d.wrap?(f=d.wrap[0])==null?void 0:f.size:"")}},{title:r("封装数据1"),key:"wrap",width:300,render:d=>{var f;return Vue.h("pre",d.wrap?(f=d.wrap[0])==null?void 0:f.data:"")}}]),h=Vue.ref([]),m=Vue.ref(0),g=Vue.ref(0),y={trigger:"axis",axisPointer:{type:"line",animation:!1,axis:"x",label:{show:!0,formatter:({value:d})=>we(new Date(d),"HH:mm:ss.SSS"),backgroundColor:"rgba(50,50,50,0.7)"}}},v=Vue.reactive({title:{},dataZoom:[{id:"dataZoomX",type:"slider",xAxisIndex:[0],filterMode:"filter"}],tooltip:y,xAxis:[{type:"time",splitLine:{show:!1}},{type:"category",axisPointer:{type:"shadow",label:{show:!0,formatter:({value:d})=>String(d),backgroundColor:"rgba(50,50,50,0.7)"}},splitLine:{show:!1},data:[]}],yAxis:[{name:"帧大小",type:"value"},{name:"时间戳",type:"value",min:"dataMin"},{name:"event",type:"value",min:0,max:100,show:!1,splitNumber:2,splitLine:{show:!1}}],series:[{yAxisIndex:0,name:"帧大小",type:"bar",lineStyle:{width:1},data:[]},{yAxisIndex:1,name:"时间戳",showSymbol:!1,type:"line",lineStyle:{width:2},encode:{tooltip:[1,2],x:0,y:2},data:[]},{xAxisIndex:1,yAxisIndex:2,type:"scatter",labelLayout:{moveOverlap:"shiftY"},markLine:{lineStyle:{type:"dashed"}}}]});function S(d,f){const _=f.coord([f.value(0),0]),w=f.coord([f.value(1),0]);return{transition:[],type:"rect",shape:{x:_[0],y:30,width:w[0]-_[0],height:30},style:f.style()}}const b=Vue.reactive({title:{text:"MemoryAllocator"},dataZoom:[{id:"dataZoomX",type:"slider",xAxisIndex:[0],filterMode:"filter"}],tooltip:{trigger:"axis",axisPointer:{type:"cross",label:{backgroundColor:"#6a7985"}}},xAxis:{min:0,scale:!0,type:"value"},yAxis:{type:"category"},series:[{type:"custom",renderItem:S,tooltip:{trigger:"item",formatter:({value:d})=>`${d[0]}-${d[1]}`},encode:{x:[0,1],y:-1}}]});Vue.watchEffect(()=>{g.value===1&&(h.value=[],v.series[0].data=[],v.series[1].data=[],v.xAxis[1].data=[]),v.animation=g.value===0});async function x(d){var f,_,w,P,D,M;try{if(g.value===1)for(d.writeTime=d.writeTime.seconds*1e3+d.writeTime.nanos/1e6,h.value.push(d),v.series[0].data.push(d.keyFrame?{value:[d.writeTime,(_=(f=d.wrap)==null?void 0:f[0])==null?void 0:_.size],itemStyle:{color:"#a90000"}}:{value:[d.writeTime,(P=(w=d.wrap)==null?void 0:w[0])==null?void 0:P.size]}),v.series[1].data.push({value:[d.writeTime,d.sequence,d.timestamp]}),v.xAxis[1].data.push(String(d.sequence));h.value.length>10;)h.value.shift(),v.series[0].data.shift(),v.series[1].data.shift(),v.xAxis[1].data.shift();else{const I=await Ve(l,u.join("/"),n);h.value=I.ring,m.value=I.ringDataSize;let A=0;b.title.text="MemoryAllocator",b.series[0].data=I.memory.flatMap((p,V)=>{const C=p.list.map(T=>({value:[A+T.s,A+T.e],itemStyle:{color:[s.value.primaryColor,s.value.infoColor,s.value.successColor,s.value.warningColor,s.value.errorColor,s.value.primaryColorHover,s.value.infoColorHover,s.value.successColorHover,s.value.warningColorHover,s.value.errorColorHover,s.value.primaryColorPressed,s.value.infoColorPressed,s.value.successColorPressed,s.value.warningColorPressed,s.value.errorColorPressed,s.value.buttonColor2,s.value.buttonColor2Hover,s.value.buttonColor2Pressed,s.value.textColor1,s.value.textColor2,s.value.textColor3][V]}}));return A+=p.size,C}),b.xAxis.max=A,v.series[0].data=I.ring.map(p=>{var V,C,T,R;return p.keyFrame?{value:[p.writeTime,(C=(V=p.wrap)==null?void 0:V[0])==null?void 0:C.size],itemStyle:{color:"#a90000"}}:{value:[p.writeTime,(R=(T=p.wrap)==null?void 0:T[0])==null?void 0:R.size]}}),v.series[1].data=I.ring.map(p=>({value:[p.writeTime,p.sequence,p.timestamp]})),v.xAxis[1].data=I.ring.map(p=>String(p.sequence));const L=Object.entries(I.reader);v.series[2].data=L.map(([p,V])=>[String(V),100,p]),v.series[2].markLine.data=L.map(p=>[{coord:[String(p[1]),0],symbol:"none"},{coord:[String(p[1]),90],symbol:"circle",name:p[0]}]),o.value.length==5&&((D=I.ring[0].wrap)==null?void 0:D.length)>1?o.value.push({title:r("封装数据2"),key:"wrap",width:300,render:p=>Vue.h("span",p.wrap[1].data)}):o.value.length==6&&((M=I.ring[0].wrap)==null?void 0:M.length)>2&&o.value.push({title:r("封装数据3"),key:"wrap",width:300,render:p=>Vue.h("span",p.wrap[2].data)})}}catch(I){c.error(I.message)}}return(d,f)=>{const _=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(Se),{onTick:x}),Vue.createElementVNode("div",_t,[Vue.createVNode(Vue.unref(Z),{class:"chart",option:Vue.unref(v),autoresize:""},null,8,["option"])]),g.value===0?(Vue.openBlock(),Vue.createElementBlock("div",Ct,[Vue.createVNode(Vue.unref(Z),{class:"chart",option:Vue.unref(b),autoresize:""},null,8,["option"])])):Vue.createCommentVNode("",!0),Vue.createVNode(_,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(xe),{title:g.value?"":`ring buffer size: ${h.value.length},total data size: ${m.value}`,columns:o.value,dataSource:h.value,"row-class-name":w=>w.keyFrame?"red":"",pagination:!1,"row-key":w=>w.sequence,"scroll-x":1090},null,8,["title","columns","dataSource","row-class-name","row-key"])]),_:1})])}}}),Et=_e(Vt,[["__scopeId","data-v-b65839ec"]]);export{Et as default}; +import{l as be}from"./vendor-ec30964e.js";import{B as xe,f as we}from"./TableAction-45c049b5.js";import{_ as Se}from"./index-eabbb46f.js";import{_ as _e,i as Ce}from"./index-c14b60e2.js";import{h as Ve}from"./index-cc631905.js";import{_ as E,Y as oe,o as le,J as ue,Z as Pe,P as ce,$ as U,a0 as De,y as he,w as de,a1 as Ie,a2 as ke,a3 as z,u as O,a4 as Le,a5 as Te,a6 as q,G as Me,a7 as Oe,h as X,C as Ee,a8 as ve,v as pe,a9 as Re,aa as Ne,ab as Be,ac as Fe,ad as ze,l as $e,ae as We,af as ge,ag as fe,ah as Ge,q as Ye,ai as Xe,aj as He,K as Ue,L as Z,N as qe,O as Ze,Q as je,U as Je,V as Ke,W as Qe,X as et}from"./installCanvasRenderer-cb1ba546.js";import{d as tt,i as rt,a as at}from"./install-c0cf116b.js";import{i as it}from"./install-40c3b04b.js";var me=function(i){E(r,i);function r(){var e=i!==null&&i.apply(this,arguments)||this;return e.type=r.type,e}return r.prototype.getInitialData=function(e,t){return oe(null,this,{useEncodeDefaulter:!0})},r.prototype.getMarkerPosition=function(e,t,a){var n=this.coordinateSystem;if(n&&n.clampData){var l=n.clampData(e),u=n.dataToPoint(l);if(a)le(n.getAxes(),function(m,g){if(m.type==="category"&&t!=null){var y=m.getTicksCoords(),v=l[g],S=t[g]==="x1"||t[g]==="y1";if(S&&(v+=1),y.length<2)return;if(y.length===2){u[g]=m.toGlobalCoord(m.getExtent()[S?1:0]);return}for(var b=void 0,x=void 0,d=1,f=0;fv){x=(_+b)/2;break}f===1&&(d=w-y[0].tickValue)}x==null&&(b?b&&(x=y[y.length-1].coord):x=y[0].coord),u[g]=m.toGlobalCoord(x)}});else{var c=this.getData(),s=c.getLayout("offset"),o=c.getLayout("size"),h=n.getBaseAxis().isHorizontal()?0:1;u[h]+=s+o/2}return u}return[NaN,NaN]},r.type="series.__base_bar__",r.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},r}(ue);ue.registerClass(me);const j=me;var nt=function(i){E(r,i);function r(){var e=i!==null&&i.apply(this,arguments)||this;return e.type=r.type,e}return r.prototype.getInitialData=function(){return oe(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},r.prototype.getProgressive=function(){return this.get("large")?this.get("progressive"):!1},r.prototype.getProgressiveThreshold=function(){var e=this.get("progressiveThreshold"),t=this.get("largeThreshold");return t>e&&(e=t),e},r.prototype.brushSelector=function(e,t,a){return a.rect(t.getItemLayout(e))},r.type="series.bar",r.dependencies=["grid","polar"],r.defaultOption=Pe(j.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),r}(j);const st=nt;var ot=function(){function i(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return i}(),lt=function(i){E(r,i);function r(e){var t=i.call(this,e)||this;return t.type="sausage",t}return r.prototype.getDefaultShape=function(){return new ot},r.prototype.buildPath=function(e,t){var a=t.cx,n=t.cy,l=Math.max(t.r0||0,0),u=Math.max(t.r,0),c=(u-l)*.5,s=l+c,o=t.startAngle,h=t.endAngle,m=t.clockwise,g=Math.PI*2,y=m?h-oMath.PI/2&&ou)return!0;u=h}return!1},r.prototype._isOrderDifferentInView=function(e,t){for(var a=t.scale,n=a.getExtent(),l=Math.max(0,n[0]),u=Math.min(n[1],a.getOrdinalMeta().categories.length-1);l<=u;++l)if(e.ordinalNumbers[l]!==a.getRawOrdinalNumber(l))return!0},r.prototype._updateSortWithinSameData=function(e,t,a,n){if(this._isOrderChangedWithinSameData(e,t,a)){var l=this._dataSort(e,a,t);this._isOrderDifferentInView(l,a)&&(this._removeOnRenderedListener(n),n.dispatchAction({type:"changeAxisOrder",componentType:a.dim+"Axis",axisId:a.index,sortInfo:l}))}},r.prototype._dispatchInitSort=function(e,t,a){var n=t.baseAxis,l=this._dataSort(e,n,function(u){return e.get(e.mapDimension(t.otherAxis.dim),u)});a.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",isInitSort:!0,axisId:n.index,sortInfo:l})},r.prototype.remove=function(e,t){this._clear(this._model),this._removeOnRenderedListener(t)},r.prototype.dispose=function(e,t){this._removeOnRenderedListener(t)},r.prototype._removeOnRenderedListener=function(e){this._onRendered&&(e.getZr().off("rendered",this._onRendered),this._onRendered=null)},r.prototype._clear=function(e){var t=this.group,a=this._data;e&&e.isAnimationEnabled()&&a&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],a.eachItemGraphicEl(function(n){q(n,e,X(n).dataIndex)})):t.removeAll(),this._data=null,this._isFirstFrame=!0},r.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},r.type="bar",r}(Ee),K={cartesian2d:function(i,r){var e=r.width<0?-1:1,t=r.height<0?-1:1;e<0&&(r.x+=r.width,r.width=-r.width),t<0&&(r.y+=r.height,r.height=-r.height);var a=i.x+i.width,n=i.y+i.height,l=G(r.x,i.x),u=Y(r.x+r.width,a),c=G(r.y,i.y),s=Y(r.y+r.height,n),o=ua?u:l,r.y=h&&c>n?s:c,r.width=o?0:u-l,r.height=h?0:s-c,e<0&&(r.x+=r.width,r.width=-r.width),t<0&&(r.y+=r.height,r.height=-r.height),o||h},polar:function(i,r){var e=r.r0<=r.r?1:-1;if(e<0){var t=r.r;r.r=r.r0,r.r0=t}var a=Y(r.r,i.r),n=G(r.r0,i.r0);r.r=a,r.r0=n;var l=a-n<0;if(e<0){var t=r.r;r.r=r.r0,r.r0=t}return l}},Q={cartesian2d:function(i,r,e,t,a,n,l,u,c){var s=new ve({shape:pe({},t),z2:1});if(s.__dataIndex=e,s.name="item",n){var o=s.shape,h=a?"height":"width";o[h]=0}return s},polar:function(i,r,e,t,a,n,l,u,c){var s=!a&&c?J:fe,o=new s({shape:t,z2:1});o.name="item";var h=ye(a);if(o.calculateTextPosition=ut(h,{isRoundCap:s===J}),n){var m=o.shape,g=a?"r":"endAngle",y={};m[g]=a?t.r0:t.startAngle,y[g]=t[g],(u?O:z)(o,{shape:y},n)}return o}};function pt(i,r){var e=i.get("realtimeSort",!0),t=r.getBaseAxis();if(e&&t.type==="category"&&r.type==="cartesian2d")return{baseAxis:t,otherAxis:r.getOtherAxis(t)}}function ee(i,r,e,t,a,n,l,u){var c,s;n?(s={x:t.x,width:t.width},c={y:t.y,height:t.height}):(s={y:t.y,height:t.height},c={x:t.x,width:t.width}),u||(l?O:z)(e,{shape:c},r,a,null);var o=r?i.baseAxis.model:null;(l?O:z)(e,{shape:s},o,a)}function te(i,r){for(var e=0;e0?1:-1,l=t.height>0?1:-1;return{x:t.x+n*a/2,y:t.y+l*a/2,width:t.width-n*a,height:t.height-l*a}},polar:function(i,r,e){var t=i.getItemLayout(r);return{cx:t.cx,cy:t.cy,r0:t.r0,r:t.r,startAngle:t.startAngle,endAngle:t.endAngle,clockwise:t.clockwise}}};function mt(i){return i.startAngle!=null&&i.endAngle!=null&&i.startAngle===i.endAngle}function ye(i){return function(r){var e=r?"Arc":"Angle";return function(t){switch(t){case"start":case"insideStart":case"end":case"insideEnd":return t+e;default:return t}}}(i)}function ae(i,r,e,t,a,n,l,u){var c=r.getItemVisual(e,"style");if(u){if(!n.get("roundCap")){var o=i.shape,h=ht(t.getModel("itemStyle"),o,!0);pe(o,h),i.setShape(o)}}else{var s=t.get(["itemStyle","borderRadius"])||0;i.setShape("r",s)}i.useStyle(c);var m=t.getShallow("cursor");m&&i.attr("cursor",m);var g=u?l?a.r>=a.r0?"endArc":"startArc":a.endAngle>=a.startAngle?"endAngle":"startAngle":l?a.height>=0?"bottom":"top":a.width>=0?"right":"left",y=Re(t);Ne(i,y,{labelFetcher:n,labelDataIndex:e,defaultText:Be(n.getData(),e),inheritColor:c.fill,defaultOpacity:c.opacity,defaultOutsidePosition:g});var v=i.getTextContent();if(u&&v){var S=t.get(["label","position"]);i.textConfig.inside=S==="middle"?!0:null,ct(i,S==="outside"?g:S,ye(l),t.get(["label","rotate"]))}Fe(v,y,n.getRawValue(e),function(x){return Ge(r,x)});var b=t.getModel(["emphasis"]);ze(i,b.get("focus"),b.get("blurScope"),b.get("disabled")),$e(i,t),mt(a)&&(i.style.fill="none",i.style.stroke="none",le(i.states,function(x){x.style&&(x.style.fill=x.style.stroke="none")}))}function yt(i,r){var e=i.get(["itemStyle","borderColor"]);if(!e||e==="none")return 0;var t=i.get(["itemStyle","borderWidth"])||0,a=isNaN(r.width)?Number.MAX_VALUE:Math.abs(r.width),n=isNaN(r.height)?Number.MAX_VALUE:Math.abs(r.height);return Math.min(t,a,n)}var At=function(){function i(){}return i}(),ie=function(i){E(r,i);function r(e){var t=i.call(this,e)||this;return t.type="largeBar",t}return r.prototype.getDefaultShape=function(){return new At},r.prototype.buildPath=function(e,t){for(var a=t.points,n=this.baseDimIdx,l=1-this.baseDimIdx,u=[],c=[],s=this.barWidth,o=0;o=0?e:null},30,!1);function bt(i,r,e){for(var t=i.baseDimIdx,a=1-t,n=i.shape.points,l=i.largeDataIndices,u=[],c=[],s=i.barWidth,o=0,h=n.length/3;o=u[0]&&r<=u[0]+c[0]&&e>=u[1]&&e<=u[1]+c[1])return l[o]}return-1}function Ae(i,r,e){if(ge(e,"cartesian2d")){var t=r,a=e.getArea();return{x:i?t.x:a.x,y:i?a.y:t.y,width:i?t.width:a.width,height:i?a.height:t.height}}else{var a=e.getArea(),n=r;return{cx:a.cx,cy:a.cy,r0:i?a.r0:n.r0,r:i?a.r:n.r,startAngle:i?n.startAngle:0,endAngle:i?n.endAngle:Math.PI*2}}}function xt(i,r,e){var t=i.type==="polar"?fe:ve;return new t({shape:Ae(r,e,i),silent:!0,z2:0})}const wt=vt;function St(i){i.registerChartView(wt),i.registerSeriesModel(st),i.registerLayout(i.PRIORITY.VISUAL.LAYOUT,Ye(He,"bar")),i.registerLayout(i.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Xe("bar")),i.registerProcessor(i.PRIORITY.PROCESSOR.STATISTIC,tt("bar")),i.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},function(r,e){var t=r.componentType||"series";e.eachComponent({mainType:t,query:r},function(a){r.sortInfo&&a.axis.setCategorySortInfo(r.sortInfo)})})}const _t={class:"events"},Ct={key:0,class:"memorys"},Vt=Vue.defineComponent({setup(i){Ue([St,it,qe,rt,at,Ze,je,Je,Ke,Qe,et]);const{t:r}=Ce.global,e=be(),{params:t,name:a}=e,n=a.split("_").pop(),l=t.id,u=t.streamPath,c=naive.useMessage(),s=naive.useThemeVars(),o=Vue.ref([{title:r("序号"),key:"sequence",width:100},{title:r("时间戳"),key:"timestamp",width:150},{title:r("写入时间"),key:"writeTime",width:150,render:d=>Vue.h(naive.NTime,{time:new Date(d.writeTime),format:"HH:mm:ss.SSS"})},{title:r("帧大小"),key:"wrap",width:100,render:d=>{var f;return Vue.h("span",d.wrap?(f=d.wrap[0])==null?void 0:f.size:"")}},{title:r("封装数据1"),key:"wrap",width:300,render:d=>{var f;return Vue.h("pre",d.wrap?(f=d.wrap[0])==null?void 0:f.data:"")}}]),h=Vue.ref([]),m=Vue.ref(0),g=Vue.ref(0),y={trigger:"axis",axisPointer:{type:"line",animation:!1,axis:"x",label:{show:!0,formatter:({value:d})=>we(new Date(d),"HH:mm:ss.SSS"),backgroundColor:"rgba(50,50,50,0.7)"}}},v=Vue.reactive({title:{},dataZoom:[{id:"dataZoomX",type:"slider",xAxisIndex:[0],filterMode:"filter"}],tooltip:y,xAxis:[{type:"time",splitLine:{show:!1}},{type:"category",axisPointer:{type:"shadow",label:{show:!0,formatter:({value:d})=>String(d),backgroundColor:"rgba(50,50,50,0.7)"}},splitLine:{show:!1},data:[]}],yAxis:[{name:"帧大小",type:"value"},{name:"时间戳",type:"value",min:"dataMin"},{name:"event",type:"value",min:0,max:100,show:!1,splitNumber:2,splitLine:{show:!1}}],series:[{yAxisIndex:0,name:"帧大小",type:"bar",lineStyle:{width:1},data:[]},{yAxisIndex:1,name:"时间戳",showSymbol:!1,type:"line",lineStyle:{width:2},encode:{tooltip:[1,2],x:0,y:2},data:[]},{xAxisIndex:1,yAxisIndex:2,type:"scatter",labelLayout:{moveOverlap:"shiftY"},markLine:{lineStyle:{type:"dashed"}}}]});function S(d,f){const _=f.coord([f.value(0),0]),w=f.coord([f.value(1),0]);return{transition:[],type:"rect",shape:{x:_[0],y:30,width:w[0]-_[0],height:30},style:f.style()}}const b=Vue.reactive({title:{text:"MemoryAllocator"},dataZoom:[{id:"dataZoomX",type:"slider",xAxisIndex:[0],filterMode:"filter"}],tooltip:{trigger:"axis",axisPointer:{type:"cross",label:{backgroundColor:"#6a7985"}}},xAxis:{min:0,scale:!0,type:"value"},yAxis:{type:"category"},series:[{type:"custom",renderItem:S,tooltip:{trigger:"item",formatter:({value:d})=>`${d[0]}-${d[1]}`},encode:{x:[0,1],y:-1}}]});Vue.watchEffect(()=>{g.value===1&&(h.value=[],v.series[0].data=[],v.series[1].data=[],v.xAxis[1].data=[]),v.animation=g.value===0});async function x(d){var f,_,w,P,D,M;try{if(g.value===1)for(d.writeTime=d.writeTime.seconds*1e3+d.writeTime.nanos/1e6,h.value.push(d),v.series[0].data.push(d.keyFrame?{value:[d.writeTime,(_=(f=d.wrap)==null?void 0:f[0])==null?void 0:_.size],itemStyle:{color:"#a90000"}}:{value:[d.writeTime,(P=(w=d.wrap)==null?void 0:w[0])==null?void 0:P.size]}),v.series[1].data.push({value:[d.writeTime,d.sequence,d.timestamp]}),v.xAxis[1].data.push(String(d.sequence));h.value.length>10;)h.value.shift(),v.series[0].data.shift(),v.series[1].data.shift(),v.xAxis[1].data.shift();else{const I=await Ve(l,u.join("/"),n);h.value=I.ring,m.value=I.ringDataSize;let A=0;b.title.text="MemoryAllocator",b.series[0].data=I.memory.flatMap((p,V)=>{const C=p.list.map(T=>({value:[A+T.s,A+T.e],itemStyle:{color:[s.value.primaryColor,s.value.infoColor,s.value.successColor,s.value.warningColor,s.value.errorColor,s.value.primaryColorHover,s.value.infoColorHover,s.value.successColorHover,s.value.warningColorHover,s.value.errorColorHover,s.value.primaryColorPressed,s.value.infoColorPressed,s.value.successColorPressed,s.value.warningColorPressed,s.value.errorColorPressed,s.value.buttonColor2,s.value.buttonColor2Hover,s.value.buttonColor2Pressed,s.value.textColor1,s.value.textColor2,s.value.textColor3][V]}}));return A+=p.size,C}),b.xAxis.max=A,v.series[0].data=I.ring.map(p=>{var V,C,T,R;return p.keyFrame?{value:[p.writeTime,(C=(V=p.wrap)==null?void 0:V[0])==null?void 0:C.size],itemStyle:{color:"#a90000"}}:{value:[p.writeTime,(R=(T=p.wrap)==null?void 0:T[0])==null?void 0:R.size]}}),v.series[1].data=I.ring.map(p=>({value:[p.writeTime,p.sequence,p.timestamp]})),v.xAxis[1].data=I.ring.map(p=>String(p.sequence));const L=Object.entries(I.reader);v.series[2].data=L.map(([p,V])=>[String(V),100,p]),v.series[2].markLine.data=L.map(p=>[{coord:[String(p[1]),0],symbol:"none"},{coord:[String(p[1]),90],symbol:"circle",name:p[0]}]),o.value.length==5&&((D=I.ring[0].wrap)==null?void 0:D.length)>1?o.value.push({title:r("封装数据2"),key:"wrap",width:300,render:p=>Vue.h("span",p.wrap[1].data)}):o.value.length==6&&((M=I.ring[0].wrap)==null?void 0:M.length)>2&&o.value.push({title:r("封装数据3"),key:"wrap",width:300,render:p=>Vue.h("span",p.wrap[2].data)})}}catch(I){c.error(I.message)}}return(d,f)=>{const _=Vue.resolveComponent("n-card");return Vue.openBlock(),Vue.createElementBlock("div",null,[Vue.createVNode(Vue.unref(Se),{onTick:x}),Vue.createElementVNode("div",_t,[Vue.createVNode(Vue.unref(Z),{class:"chart",option:Vue.unref(v),autoresize:""},null,8,["option"])]),g.value===0?(Vue.openBlock(),Vue.createElementBlock("div",Ct,[Vue.createVNode(Vue.unref(Z),{class:"chart",option:Vue.unref(b),autoresize:""},null,8,["option"])])):Vue.createCommentVNode("",!0),Vue.createVNode(_,{bordered:!1,class:"proCard"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(xe),{title:g.value?"":`ring buffer size: ${h.value.length},total data size: ${m.value}`,columns:o.value,dataSource:h.value,"row-class-name":w=>w.keyFrame?"red":"",pagination:!1,"row-key":w=>w.sequence,"scroll-x":1090},null,8,["title","columns","dataSource","row-class-name","row-key"])]),_:1})])}}}),Et=_e(Vt,[["__scopeId","data-v-b65839ec"]]);export{Et as default}; diff --git a/plugin/console/web/index.html b/plugin/console/web/index.html index b3ffe91..8378ab8 100644 --- a/plugin/console/web/index.html +++ b/plugin/console/web/index.html @@ -1 +1 @@ -Monibuca 实例管理平台
\ No newline at end of file +Monibuca 实例管理平台
\ No newline at end of file diff --git a/plugin/flv/pkg/pull.go b/plugin/flv/pkg/pull.go index 047c5c0..ac57409 100644 --- a/plugin/flv/pkg/pull.go +++ b/plugin/flv/pkg/pull.go @@ -3,6 +3,7 @@ package flv import ( "errors" "m7s.live/m7s/v5/pkg/config" + "m7s.live/m7s/v5/pkg/task" "m7s.live/m7s/v5" "m7s.live/m7s/v5/pkg/util" @@ -14,7 +15,11 @@ type Puller struct { } func NewPuller(_ config.Pull) m7s.IPuller { - return &Puller{} + p := &Puller{} + p.Description = map[string]any{ + task.OwnerTypeKey: "FlvPuller", + } + return p } func (p *Puller) Run() (err error) { diff --git a/plugin/rtmp/pkg/client.go b/plugin/rtmp/pkg/client.go index 75958a4..eac485a 100644 --- a/plugin/rtmp/pkg/client.go +++ b/plugin/rtmp/pkg/client.go @@ -4,6 +4,7 @@ import ( "crypto/tls" "errors" "m7s.live/m7s/v5/pkg/config" + "m7s.live/m7s/v5/pkg/task" "net" "net/url" "strings" @@ -85,6 +86,9 @@ func NewPuller(_ config.Pull) m7s.IPuller { chunkSize: 4096, } ret.NetConnection = &NetConnection{} + ret.Description = task.Description{ + task.OwnerTypeKey: "RTMPPuller", + } return ret } @@ -94,6 +98,9 @@ func NewPusher() m7s.IPusher { chunkSize: 4096, } ret.NetConnection = &NetConnection{} + ret.Description = task.Description{ + task.OwnerTypeKey: "RTMPPusher", + } return ret } diff --git a/plugin/rtp/pkg/audio.go b/plugin/rtp/pkg/audio.go index 6068c13..9aac83e 100644 --- a/plugin/rtp/pkg/audio.go +++ b/plugin/rtp/pkg/audio.go @@ -398,7 +398,7 @@ func (r *Audio) Mux(codexCtx codec.ICodecCtx, from *AVFrame) { ctx = &c.RTPCtx pts := uint32(from.Timestamp * time.Duration(ctx.ClockRate) / time.Second) //AU_HEADER_LENGTH,因为单位是bit, 除以8就是auHeader的字节长度;又因为单个auheader字节长度2字节,所以再除以2就是auheader的个数。 - auHeaderLen := []byte{0x00, 0x10, (byte)((r.Size & 0x1fe0) >> 5), (byte)((r.Size & 0x1f) << 3)} // 3 = 16-13, 5 = 8-3 + auHeaderLen := []byte{0x00, 0x10, (byte)((data.Size & 0x1fe0) >> 5), (byte)((data.Size & 0x1f) << 3)} // 3 = 16-13, 5 = 8-3 for reader := data.NewReader(); reader.Length > 0; { payloadLen := MTUSize if reader.Length+4 < MTUSize { diff --git a/plugin/rtp/pkg/video.go b/plugin/rtp/pkg/video.go index 2f8a9ad..96d1edb 100644 --- a/plugin/rtp/pkg/video.go +++ b/plugin/rtp/pkg/video.go @@ -20,7 +20,7 @@ import ( type ( H26xCtx struct { RTPCtx - dtsEst *util.DTSEstimator + dtsEst util.DTSEstimator } H264Ctx struct { H26xCtx @@ -68,7 +68,6 @@ func (r *Video) Parse(t *AVTrack) (err error) { ctx = t.ICodecCtx.(*H264Ctx) } else { ctx = &H264Ctx{} - ctx.dtsEst = util.NewDTSEstimator() ctx.parseFmtpLine(r.RTPCodecParameters) var sps, pps []byte //packetization-mode=1; sprop-parameter-sets=J2QAKaxWgHgCJ+WagICAgQ==,KO48sA==; profile-level-id=640029 @@ -91,6 +90,7 @@ func (r *Video) Parse(t *AVTrack) (err error) { return } pts := r.Packets[0].Timestamp + dts := ctx.dtsEst.Feed(pts) r.DTS = time.Duration(dts) * time.Millisecond / 90 r.CTS = time.Duration(pts-dts) * time.Millisecond / 90 @@ -114,7 +114,6 @@ func (r *Video) Parse(t *AVTrack) (err error) { ctx = t.ICodecCtx.(*H265Ctx) } else { ctx = &H265Ctx{} - ctx.dtsEst = util.NewDTSEstimator() ctx.parseFmtpLine(r.RTPCodecParameters) var vps, sps, pps []byte if sprop_sps, ok := ctx.Fmtp["sprop-sps"]; ok { diff --git a/plugin/rtsp/pkg/client.go b/plugin/rtsp/pkg/client.go index e9de020..f76eca2 100644 --- a/plugin/rtsp/pkg/client.go +++ b/plugin/rtsp/pkg/client.go @@ -2,6 +2,7 @@ package rtsp import ( "m7s.live/m7s/v5/pkg/config" + "m7s.live/m7s/v5/pkg/task" "m7s.live/m7s/v5" "m7s.live/m7s/v5/pkg/util" @@ -41,6 +42,9 @@ func NewPuller(_ config.Pull) m7s.IPuller { direction: DIRECTION_PULL, } client.NetConnection = &NetConnection{} + client.Description = map[string]any{ + task.OwnerTypeKey: "RTSPPuller", + } return client } @@ -49,6 +53,9 @@ func NewPusher() m7s.IPusher { direction: DIRECTION_PUSH, } client.NetConnection = &NetConnection{} + client.Description = map[string]any{ + task.OwnerTypeKey: "RTSPPusher", + } return client } diff --git a/plugin/rtsp/pkg/connection.go b/plugin/rtsp/pkg/connection.go index 384dc0a..cdbe1cb 100644 --- a/plugin/rtsp/pkg/connection.go +++ b/plugin/rtsp/pkg/connection.go @@ -139,6 +139,9 @@ func (c *NetConnection) Connect(remoteURL string) (err error) { c.URL = rtspURL c.UserAgent = "monibuca" + m7s.Version c.auth = util.NewAuth(c.URL.User) + if c.Description != nil { + c.Description["remoteAddr"] = conn.RemoteAddr().String() + } // c.Backchannel = true return } diff --git a/plugin/sei/api.go b/plugin/sei/api.go index 7d3fda2..460fbfb 100644 --- a/plugin/sei/api.go +++ b/plugin/sei/api.go @@ -22,7 +22,7 @@ func (conf *SEIPlugin) Insert(ctx context.Context, req *pb.InsertRequest) (*glob return nil, pkg.ErrNotFound } var transformer *sei.Transformer - if tm, ok := conf.Server.Transforms.Transformed.Get(targetStreamPath); ok { + if tm, ok := conf.Server.Transforms.Get(targetStreamPath); ok { transformer, ok = tm.TransformJob.Transformer.(*sei.Transformer) if !ok { return nil, errors.New("targetStreamPath is not a sei transformer") diff --git a/plugin/transcode/pkg/transform.go b/plugin/transcode/pkg/transform.go index 89d1055..f8a5bf9 100644 --- a/plugin/transcode/pkg/transform.go +++ b/plugin/transcode/pkg/transform.go @@ -46,6 +46,9 @@ type ( func NewTransform() m7s.ITransformer { ret := &Transformer{} + ret.Description = map[string]any{ + task.OwnerTypeKey: "Transcode", + } ret.WriteFlvTag = func(flv net.Buffers) (err error) { var buffer []byte for _, b := range flv { diff --git a/transformer.go b/transformer.go index 5fb55c7..d69aebd 100644 --- a/transformer.go +++ b/transformer.go @@ -2,6 +2,7 @@ package m7s import ( "context" + "slices" "m7s.live/m7s/v5/pkg" "m7s.live/m7s/v5/pkg/config" @@ -30,11 +31,12 @@ type ( } TransformedMap struct { StreamPath string + Target string TransformJob *TransformJob } Transforms struct { - Transformed util.Collection[string, *TransformedMap] - task.Manager[string, *TransformJob] + task.Work + util.Collection[string, *TransformedMap] PublishEvent chan *Publisher } TransformsPublishEvent struct { @@ -48,23 +50,22 @@ func (t *TransformsPublishEvent) GetSignal() any { } func (t *TransformsPublishEvent) Tick(pub any) { - if m, ok := t.Transforms.Transformed.Get(pub.(*Publisher).StreamPath); ok { - m.TransformJob.TransformPublished(pub.(*Publisher)) + incomingPublisher := pub.(*Publisher) + for job := range t.Transforms.Search(func(m *TransformedMap) bool { + return m.StreamPath == incomingPublisher.StreamPath + }) { + job.TransformJob.TransformPublished(incomingPublisher) } } func (t *TransformedMap) GetKey() string { - return t.StreamPath + return t.Target } func (r *DefaultTransformer) GetTransformJob() *TransformJob { return &r.TransformJob } -func (p *TransformJob) GetKey() string { - return p.StreamPath -} - func (p *TransformJob) Subscribe() (err error) { p.Subscriber, err = p.Plugin.Subscribe(p.Transformer, p.StreamPath) return @@ -84,24 +85,23 @@ func (p *TransformJob) Init(transformer ITransformer, plugin *Plugin, streamPath "streamPath": streamPath, "conf": conf, } - plugin.Server.Transforms.Add(p, plugin.Logger.With("streamPath", streamPath)) + + plugin.Server.Transforms.AddTask(p, plugin.Logger.With("streamPath", streamPath)) return p } func (p *TransformJob) Start() (err error) { s := p.Plugin.Server - if _, ok := s.Transforms.Get(p.GetKey()); ok { + if slices.ContainsFunc(p.Config.Output, func(to config.TransfromOutput) bool { + return s.Transforms.Has(to.Target) + }) { return pkg.ErrTransformSame } - - if _, ok := s.Transforms.Transformed.Get(p.GetKey()); ok { - return pkg.ErrStreamExist - } - for _, to := range p.Config.Output { - if to.StreamPath != "" { - s.Transforms.Transformed.Set(&TransformedMap{ + if to.Target != "" { + s.Transforms.Set(&TransformedMap{ StreamPath: to.StreamPath, + Target: to.Target, TransformJob: p, }) } @@ -112,15 +112,13 @@ func (p *TransformJob) Start() (err error) { func (p *TransformJob) TransformPublished(pub *Publisher) { p.Publisher = pub - pub.OnDispose(func() { - p.Stop(pub.StopReason()) - }) + // pub.OnDispose(func() { + // p.Stop(pub.StopReason()) + // }) } func (p *TransformJob) Dispose() { for _, to := range p.Config.Output { - if to.StreamPath != "" { - p.Plugin.Server.Transforms.Transformed.RemoveByKey(to.StreamPath) - } + p.Plugin.Server.Transforms.RemoveByKey(to.Target) } }