mirror of
https://github.com/larksuite/cli.git
synced 2026-09-14 18:42:53 +08:00
b9cced677a
* docs: define task compact field projection * docs: add task compact fields implementation plan * feat: add task output field projector * feat: expose missing fields in task summaries * feat: expand task write result fields * feat: expose fields in nested task results * chore: remove internal planning artifacts * docs: require progressive task command discovery * docs: require schema-backed task create data
32 lines
715 B
Go
32 lines
715 B
Go
// Copyright (c) 2026 Lark Technologies Pte. Ltd.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package task
|
|
|
|
type taskOutputField string
|
|
|
|
const (
|
|
taskOutputSummary taskOutputField = "summary"
|
|
taskOutputMembers taskOutputField = "members"
|
|
taskOutputStart taskOutputField = "start"
|
|
taskOutputDue taskOutputField = "due"
|
|
taskOutputStatus taskOutputField = "status"
|
|
)
|
|
|
|
var standardTaskOutputFields = []taskOutputField{
|
|
taskOutputSummary,
|
|
taskOutputMembers,
|
|
taskOutputStart,
|
|
taskOutputDue,
|
|
taskOutputStatus,
|
|
}
|
|
|
|
func projectTaskFields(dst, task map[string]interface{}, fields ...taskOutputField) {
|
|
for _, field := range fields {
|
|
key := string(field)
|
|
if value, ok := task[key]; ok {
|
|
dst[key] = value
|
|
}
|
|
}
|
|
}
|