@amaster.ai/pi-lark 0.1.7 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/skills/lark-apps/SKILL.md +41 -6
- package/skills/lark-apps/references/lark-apps-cloud-dev.md +5 -4
- package/skills/lark-apps/references/lark-apps-create.md +6 -3
- package/skills/lark-apps/references/lark-apps-db.md +130 -2
- package/skills/lark-apps/references/lark-apps-get.md +1 -1
- package/skills/lark-apps/references/lark-apps-list.md +1 -1
- package/skills/lark-apps/references/lark-apps-local-dev.md +27 -1
- package/skills/lark-apps/references/lark-apps-release-create.md +1 -1
- package/skills/lark-apps/references/lark-apps-user-id-convert.md +63 -0
- package/skills/lark-base/SKILL.md +155 -159
- package/skills/lark-base/references/{lark-base-role-guide.md → lark-base-advanced-permission-and-role.md} +5 -5
- package/skills/lark-base/references/lark-base-app-block-data-config.md +122 -0
- package/skills/lark-base/references/lark-base-app.md +225 -0
- package/skills/lark-base/references/lark-base-cell-value.md +26 -19
- package/skills/lark-base/references/{dashboard-block-data-config.md → lark-base-dashboard-block-config.md} +37 -5
- package/skills/lark-base/references/lark-base-dashboard-block-get-data.md +18 -2
- package/skills/lark-base/references/lark-base-dashboard.md +25 -12
- package/skills/lark-base/references/lark-base-data-analysis-pandas.md +93 -0
- package/skills/lark-base/references/lark-base-data-analysis-python-stdlib.md +120 -0
- package/skills/lark-base/references/lark-base-data-query.md +8 -11
- package/skills/lark-base/references/lark-base-field-create.md +13 -45
- package/skills/lark-base/references/{formula-field-guide.md → lark-base-field-formula.md} +1 -1
- package/skills/lark-base/references/{lookup-field-guide.md → lark-base-field-lookup.md} +1 -1
- package/skills/lark-base/references/{lark-base-field-json.md → lark-base-field-schema.md} +18 -100
- package/skills/lark-base/references/lark-base-field-update.md +13 -51
- package/skills/lark-base/references/lark-base-filter-condition.md +19 -31
- package/skills/lark-base/references/lark-base-record-batch-create.md +5 -1
- package/skills/lark-base/references/lark-base-record-batch-update.md +5 -2
- package/skills/lark-base/references/lark-base-record-query-and-analysis-cloud-sop.md +145 -0
- package/skills/lark-base/references/lark-base-record-query-and-analysis-sop.md +233 -0
- package/skills/lark-base/references/{role-config.md → lark-base-role-config.md} +2 -2
- package/skills/lark-base/references/lark-base-view-set-filter.md +1 -1
- package/skills/lark-base/references/lark-base-workflow-schema.md +2 -2
- package/skills/lark-base/references/{lark-base-workflow-guide.md → lark-base-workflow.md} +1 -1
- package/skills/lark-calendar/SKILL.md +3 -1
- package/skills/lark-calendar/references/lark-calendar-create.md +4 -3
- package/skills/lark-doc/SKILL.md +26 -61
- package/skills/lark-doc/references/genres/business-analysis.md +30 -0
- package/skills/lark-doc/references/genres/data-report.md +32 -0
- package/skills/lark-doc/references/genres/email.md +38 -0
- package/skills/lark-doc/references/genres/execution-plan.md +27 -0
- package/skills/lark-doc/references/genres/formal-doc.md +37 -0
- package/skills/lark-doc/references/genres/meeting-minutes.md +24 -0
- package/skills/lark-doc/references/genres/memo-brief.md +25 -0
- package/skills/lark-doc/references/genres/official-redhead.md +73 -0
- package/skills/lark-doc/references/genres/prd.md +26 -0
- package/skills/lark-doc/references/genres/proposal.md +24 -0
- package/skills/lark-doc/references/genres/research-report.md +32 -0
- package/skills/lark-doc/references/genres/retrospective.md +25 -0
- package/skills/lark-doc/references/genres/route-consumer.md +37 -0
- package/skills/lark-doc/references/genres/route-creative.md +36 -0
- package/skills/lark-doc/references/genres/route-knowledge.md +39 -0
- package/skills/lark-doc/references/genres/route-marketing.md +40 -0
- package/skills/lark-doc/references/genres/route-media.md +36 -0
- package/skills/lark-doc/references/genres/route-opinion.md +38 -0
- package/skills/lark-doc/references/genres/route-personal-brand.md +36 -0
- package/skills/lark-doc/references/genres/route-platform.md +9 -0
- package/skills/lark-doc/references/genres/route-report.md +10 -0
- package/skills/lark-doc/references/genres/route-workplace.md +17 -0
- package/skills/lark-doc/references/genres/sop-tutorial.md +41 -0
- package/skills/lark-doc/references/genres/technical-doc.md +39 -0
- package/skills/lark-doc/references/genres/wechat.md +39 -0
- package/skills/lark-doc/references/genres/weekly-report.md +24 -0
- package/skills/lark-doc/references/genres/white-paper.md +32 -0
- package/skills/lark-doc/references/genres/xiaohongshu.md +38 -0
- package/skills/lark-doc/references/lark-doc-create-workflow.md +121 -0
- package/skills/lark-doc/references/lark-doc-create.md +22 -48
- package/skills/lark-doc/references/lark-doc-fetch.md +80 -92
- package/skills/lark-doc/references/lark-doc-history.md +16 -15
- package/skills/lark-doc/references/lark-doc-md.md +5 -1
- package/skills/lark-doc/references/lark-doc-media-download.md +2 -1
- package/skills/lark-doc/references/lark-doc-script.md +76 -0
- package/skills/lark-doc/references/lark-doc-update.md +73 -221
- package/skills/lark-doc/references/lark-doc-whiteboard.md +5 -9
- package/skills/lark-doc/references/lark-doc-xml-extended-blocks.md +17 -12
- package/skills/lark-doc/references/lark-doc-xml.md +38 -167
- package/skills/lark-drive/SKILL.md +11 -7
- package/skills/lark-drive/references/lark-drive-apply-permission.md +1 -1
- package/skills/lark-drive/references/lark-drive-copy.md +87 -0
- package/skills/lark-drive/references/lark-drive-download.md +29 -2
- package/skills/lark-drive/references/lark-drive-export.md +4 -0
- package/skills/lark-drive/references/lark-drive-member-remove.md +59 -0
- package/skills/lark-drive/references/lark-drive-preview.md +21 -2
- package/skills/lark-drive/references/lark-drive-push.md +5 -1
- package/skills/lark-drive/references/lark-drive-search.md +2 -0
- package/skills/lark-drive/references/lark-drive-task-result.md +3 -0
- package/skills/lark-drive/references/lark-drive-update-title.md +78 -0
- package/skills/lark-event/SKILL.md +7 -4
- package/skills/lark-event/references/lark-event-vc.md +8 -2
- package/skills/lark-im/SKILL.md +14 -9
- package/skills/lark-im/references/lark-im-chat-list.md +9 -2
- package/skills/lark-im/references/lark-im-chat-members-list.md +7 -4
- package/skills/lark-im/references/lark-im-chat-messages-list.md +10 -3
- package/skills/lark-im/references/lark-im-chat-search.md +9 -2
- package/skills/lark-im/references/lark-im-feed-group-list-item.md +2 -2
- package/skills/lark-im/references/lark-im-feed-group-list.md +2 -2
- package/skills/lark-im/references/lark-im-feed-shortcut-list.md +1 -1
- package/skills/lark-im/references/lark-im-flag-list.md +2 -2
- package/skills/lark-im/references/lark-im-message-enrichment.md +1 -1
- package/skills/lark-im/references/lark-im-messages-resources-download.md +19 -25
- package/skills/lark-im/references/lark-im-messages-search.md +4 -5
- package/skills/lark-im/references/lark-im-threads-messages-list.md +8 -4
- package/skills/lark-mail/references/lark-mail-triage.md +19 -4
- package/skills/lark-minutes/SKILL.md +12 -6
- package/skills/lark-minutes/references/lark-minutes-apply-permission.md +95 -0
- package/skills/lark-minutes/references/lark-minutes-detail.md +7 -6
- package/skills/lark-minutes/references/lark-minutes-download.md +4 -2
- package/skills/lark-minutes/references/lark-minutes-search.md +6 -7
- package/skills/lark-note/SKILL.md +13 -9
- package/skills/lark-note/references/lark-note-detail.md +5 -2
- package/skills/lark-note/references/lark-note-transcript.md +2 -0
- package/skills/lark-shared/SKILL.md +39 -3
- package/skills/lark-sheets/SKILL.md +83 -82
- package/skills/lark-sheets/references/lark-sheets-batch-update.md +13 -58
- package/skills/lark-sheets/references/lark-sheets-chart.md +2 -1
- package/skills/lark-sheets/references/lark-sheets-conditional-format.md +1 -1
- package/skills/lark-sheets/references/lark-sheets-range-operations.md +5 -5
- package/skills/lark-sheets/references/lark-sheets-read-data.md +80 -6
- package/skills/lark-sheets/references/lark-sheets-sheet-structure.md +21 -10
- package/skills/lark-sheets/references/lark-sheets-styles-put.md +93 -0
- package/skills/lark-sheets/references/lark-sheets-visual-standards.md +2 -2
- package/skills/lark-sheets/references/lark-sheets-workbook.md +4 -3
- package/skills/lark-sheets/references/lark-sheets-write-cells.md +40 -12
- package/skills/lark-sheets/scripts/lark_detect_subtables.py +593 -0
- package/skills/lark-sheets/scripts/lark_inspect_workbook.py +188 -0
- package/skills/lark-sheets/scripts/lark_profile_table.py +614 -0
- package/skills/lark-sheets/scripts/lark_sheet_range.py +176 -0
- package/skills/lark-sheets/scripts/lark_sheet_read_cli.py +184 -0
- package/skills/lark-sheets/scripts/sheets_df.py +21 -3
- package/skills/lark-slides/SKILL.md +64 -81
- package/skills/lark-slides/references/cli/lark-slides-add-slide.md +92 -0
- package/skills/lark-slides/references/cli/lark-slides-create.md +176 -0
- package/skills/lark-slides/references/cli/lark-slides-delete-slide.md +65 -0
- package/skills/lark-slides/references/cli/lark-slides-history.md +132 -0
- package/skills/lark-slides/references/cli/lark-slides-media-upload.md +103 -0
- package/skills/lark-slides/references/cli/lark-slides-replace-slide.md +259 -0
- package/skills/lark-slides/references/cli/lark-slides-screenshot.md +115 -0
- package/skills/lark-slides/references/cli/lark-slides-update-slide.md +163 -0
- package/skills/lark-slides/references/cli/lark-slides-xml-presentation-slide-get.md +110 -0
- package/skills/lark-slides/references/cli/lark-slides-xml-presentation-slide-replace.md +188 -0
- package/skills/lark-slides/references/cli/lark-slides-xml-presentations-get.md +157 -0
- package/skills/lark-slides/references/iconpark-index.json +5 -41901
- package/skills/lark-slides/references/iconpark.md +3 -44
- package/skills/lark-slides/references/lark-slides-add-slide.md +5 -0
- package/skills/lark-slides/references/lark-slides-create.md +3 -162
- package/skills/lark-slides/references/lark-slides-delete-slide.md +5 -0
- package/skills/lark-slides/references/lark-slides-edit-workflows.md +3 -142
- package/skills/lark-slides/references/lark-slides-history.md +3 -130
- package/skills/lark-slides/references/lark-slides-media-upload.md +3 -124
- package/skills/lark-slides/references/lark-slides-pptx-template-workflows.md +3 -83
- package/skills/lark-slides/references/lark-slides-replace-slide.md +3 -235
- package/skills/lark-slides/references/lark-slides-screenshot.md +3 -95
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-get.md +3 -108
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-replace.md +3 -186
- package/skills/lark-slides/references/lark-slides-xml-presentations-get.md +3 -132
- package/skills/lark-slides/references/planning-layer.md +1 -1
- package/skills/lark-slides/references/slides_chart_demo.xml +5 -1416
- package/skills/lark-slides/references/slides_xml_schema_definition.xml +3 -3468
- package/skills/lark-slides/references/troubleshooting.md +3 -61
- package/skills/lark-slides/references/validation-checklist.md +3 -154
- package/skills/lark-slides/references/workflow/error-handling.md +62 -0
- package/skills/lark-slides/references/workflow/slides-editing.md +143 -0
- package/skills/lark-slides/references/workflow/template-editing.md +85 -0
- package/skills/lark-slides/references/workflow/validation-xml.md +156 -0
- package/skills/lark-slides/references/xml/iconpark-index.json +37458 -0
- package/skills/lark-slides/references/xml/iconpark.md +46 -0
- package/skills/lark-slides/references/xml/slides_chart_demo.xml +1415 -0
- package/skills/lark-slides/references/xml/slides_xml_schema_definition.xml +3514 -0
- package/skills/lark-slides/references/xml/xml-schema-quick-ref.md +497 -0
- package/skills/lark-slides/references/xml-schema-quick-ref.md +3 -483
- package/skills/lark-slides/scripts/iconpark_tool.py +1 -1
- package/skills/lark-slides/scripts/sxsd_validator.py +154 -10
- package/skills/lark-slides/scripts/xml_lint.py +2989 -0
- package/skills/lark-slides/scripts/xml_lint_test.py +4720 -0
- package/skills/lark-slides/scripts/xml_text_overlap_lint.py +3 -2691
- package/skills/lark-slides/scripts/xml_text_overlap_lint_test.py +5 -3788
- package/skills/lark-task/SKILL.md +12 -0
- package/skills/lark-task/references/lark-task-create.md +3 -1
- package/skills/lark-vc/SKILL.md +15 -5
- package/skills/lark-vc/references/lark-vc-detail.md +11 -6
- package/skills/{lark-vc-agent/references/lark-vc-agent-meeting-events.md → lark-vc/references/lark-vc-meeting-events.md} +121 -20
- package/skills/{lark-vc-agent/references/lark-vc-agent-meeting-list-active.md → lark-vc/references/lark-vc-meeting-list-active.md} +2 -2
- package/skills/{lark-vc-agent/references/lark-vc-agent-meeting-message-send.md → lark-vc/references/lark-vc-meeting-message-send.md} +3 -3
- package/skills/lark-vc/references/lark-vc-recording.md +8 -6
- package/skills/lark-vc/references/vc-domain-boundaries.md +8 -1
- package/skills/lark-vc-agent/SKILL.md +24 -9
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-join.md +2 -2
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-leave.md +2 -2
- package/skills/lark-whiteboard/SKILL.md +15 -8
- package/skills/lark-whiteboard/references/lark-whiteboard-export.md +4 -3
- package/skills/lark-whiteboard/references/lark-whiteboard-update.md +4 -4
- package/skills/lark-whiteboard/references/lark-whiteboard-workflow.md +19 -17
- package/skills/lark-whiteboard/routes/dsl.md +8 -2
- package/skills/lark-whiteboard/routes/mermaid.md +1 -1
- package/skills/lark-whiteboard/routes/svg-edit.md +5 -2
- package/skills/lark-whiteboard/routes/svg.md +3 -1
- package/skills/lark-whiteboard/scenes/mention.md +71 -0
- package/skills/lark-wiki/SKILL.md +8 -4
- package/skills/lark-wiki/references/lark-wiki-delete-space.md +6 -3
- package/skills/lark-wiki/references/lark-wiki-node-copy.md +5 -19
- package/skills/lark-wiki/references/lark-wiki-node-create.md +19 -2
- package/skills/lark-wiki/references/lark-wiki-node-get.md +15 -0
- package/skills/lark-wiki/references/lark-wiki-node-list.md +1 -1
- package/skills/lark-base/references/lark-base-data-analysis-sop.md +0 -210
- package/skills/lark-base/references/lark-base-data-query-guide.md +0 -61
- package/skills/lark-base/references/lark-base-record-upsert.md +0 -63
- package/skills/lark-doc/references/lark-doc-word-stat.md +0 -93
- package/skills/lark-doc/references/style/lark-doc-create-workflow.md +0 -47
- package/skills/lark-doc/references/style/lark-doc-style.md +0 -68
- package/skills/lark-doc/references/style/lark-doc-update-workflow.md +0 -48
- package/skills/lark-doc/scripts/doc_word_stat.py +0 -1243
- package/skills/lark-slides/references/lark-slides-replace-pages.md +0 -95
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-create.md +0 -219
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-delete.md +0 -126
|
@@ -1,188 +1,5 @@
|
|
|
1
|
-
# lark-slides xml_presentation.slide replace
|
|
1
|
+
# lark-slides xml_presentation.slide replace(兼容入口)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
本文档已迁移至 [`cli/lark-slides-xml-presentation-slide-replace.md`](cli/lark-slides-xml-presentation-slide-replace.md)。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
> **推荐**:优先使用 [`+replace-slide`](lark-slides-replace-slide.md) Shortcut——它会自动注入 `id` 和 `<content/>`,直接调本 API 需自己处理这两个约束(见注意事项 5、6)。
|
|
8
|
-
|
|
9
|
-
## 命令
|
|
10
|
-
|
|
11
|
-
```bash
|
|
12
|
-
lark-cli slides xml_presentation.slide replace --as user --params '<json_params>' --data '<json_data>'
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## 参数说明
|
|
16
|
-
|
|
17
|
-
| 参数 | 类型 | 必需 | 说明 |
|
|
18
|
-
|------|------|------|------|
|
|
19
|
-
| `--params` | JSON string | 是 | 路径参数与查询参数 |
|
|
20
|
-
| `--data` | JSON string | 是 | patch 列表 |
|
|
21
|
-
|
|
22
|
-
### params JSON 结构
|
|
23
|
-
|
|
24
|
-
```json
|
|
25
|
-
{
|
|
26
|
-
"xml_presentation_id": "slides_example_presentation_id",
|
|
27
|
-
"slide_id": "slide_example_id",
|
|
28
|
-
"revision_id": -1,
|
|
29
|
-
"tid": "idMock"
|
|
30
|
-
}
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
| 字段 | 类型 | 必需 | 说明 |
|
|
34
|
-
|------|------|------|------|
|
|
35
|
-
| `xml_presentation_id` | string | 是 | 演示文稿唯一标识 |
|
|
36
|
-
| `slide_id` | string | 是 | 页面唯一标识 |
|
|
37
|
-
| `revision_id` | integer | 否 | 默认 `-1`(以最新版为基准);传具体版本号做乐观锁 |
|
|
38
|
-
| `tid` | string | 否 | 事务 ID,一般留空 |
|
|
39
|
-
|
|
40
|
-
### data JSON 结构
|
|
41
|
-
|
|
42
|
-
```json
|
|
43
|
-
{
|
|
44
|
-
"parts": [
|
|
45
|
-
{ "action": "block_replace", "block_id": "bab", "replacement": "<shape .../>" },
|
|
46
|
-
{ "action": "block_insert", "insertion": "<img .../>", "insert_before_block_id": "baa" }
|
|
47
|
-
]
|
|
48
|
-
}
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
| 字段 | 类型 | 必需 | 说明 |
|
|
52
|
-
|------|------|------|------|
|
|
53
|
-
| `parts` | array | 是 | patch 列表,长度 1~200,顺序执行 |
|
|
54
|
-
|
|
55
|
-
### parts[] 字段(按 action 不同)
|
|
56
|
-
|
|
57
|
-
本期 CLI 文档化两种 action:
|
|
58
|
-
|
|
59
|
-
#### action = "block_replace" — 整块替换
|
|
60
|
-
|
|
61
|
-
| 字段 | 必填 | 说明 |
|
|
62
|
-
|------|------|------|
|
|
63
|
-
| `action` | 是 | 固定 `block_replace` |
|
|
64
|
-
| `block_id` | 是 | 目标块的 3 位 short element ID(从 `slide.get` 返回的 XML 里读到) |
|
|
65
|
-
| `replacement` | 是 | 新 XML 片段,替换整个目标块 |
|
|
66
|
-
|
|
67
|
-
#### action = "block_insert" — 整块插入
|
|
68
|
-
|
|
69
|
-
| 字段 | 必填 | 说明 |
|
|
70
|
-
|------|------|------|
|
|
71
|
-
| `action` | 是 | 固定 `block_insert` |
|
|
72
|
-
| `insertion` | 是 | 要插入的完整 XML 片段 |
|
|
73
|
-
| `insert_before_block_id` | 否 | 插到这个块之前;省略则追加到页面末尾 |
|
|
74
|
-
|
|
75
|
-
## 使用示例
|
|
76
|
-
|
|
77
|
-
### block_replace:换一个 shape 的整体内容
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
lark-cli slides xml_presentation.slide replace --as user --params '{
|
|
81
|
-
"xml_presentation_id": "slides_example_presentation_id",
|
|
82
|
-
"slide_id": "slide_example_id"
|
|
83
|
-
}' --data '{
|
|
84
|
-
"parts": [
|
|
85
|
-
{
|
|
86
|
-
"action": "block_replace",
|
|
87
|
-
"block_id": "bab",
|
|
88
|
-
"replacement": "<shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新标题</p></content></shape>"
|
|
89
|
-
}
|
|
90
|
-
]
|
|
91
|
-
}'
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
### block_insert:在已有页上加一张图
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
# 先拿 file_token
|
|
98
|
-
TOKEN=$(lark-cli slides +media-upload --file ./pic.png --presentation "$PID" --as user | jq -r '.data.file_token')
|
|
99
|
-
|
|
100
|
-
lark-cli slides xml_presentation.slide replace --as user --params "{
|
|
101
|
-
\"xml_presentation_id\": \"$PID\",
|
|
102
|
-
\"slide_id\": \"$SID\"
|
|
103
|
-
}" --data "$(jq -n --arg token "$TOKEN" '{
|
|
104
|
-
parts: [
|
|
105
|
-
{
|
|
106
|
-
action: "block_insert",
|
|
107
|
-
insertion: ("<img src=\"" + $token + "\" topLeftX=\"500\" topLeftY=\"100\" width=\"200\" height=\"150\"/>")
|
|
108
|
-
}
|
|
109
|
-
]
|
|
110
|
-
}')"
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
### 多条 parts 原子执行
|
|
114
|
-
|
|
115
|
-
```bash
|
|
116
|
-
lark-cli slides xml_presentation.slide replace --as user --params '{
|
|
117
|
-
"xml_presentation_id": "slides_example_presentation_id",
|
|
118
|
-
"slide_id": "slide_example_id"
|
|
119
|
-
}' --data '{
|
|
120
|
-
"parts": [
|
|
121
|
-
{"action":"block_replace","block_id":"bab","replacement":"<shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新标题</p></content></shape>"},
|
|
122
|
-
{"action":"block_insert","insertion":"<img src=\"<file_token>\" topLeftX=\"700\" topLeftY=\"400\" width=\"180\" height=\"100\"/>"}
|
|
123
|
-
]
|
|
124
|
-
}'
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
## 返回值
|
|
128
|
-
|
|
129
|
-
### 成功
|
|
130
|
-
|
|
131
|
-
```json
|
|
132
|
-
{
|
|
133
|
-
"ok": true,
|
|
134
|
-
"identity": "user",
|
|
135
|
-
"data": {
|
|
136
|
-
"revision_id": 105
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
### 失败(任一 part 失败,整批不生效)
|
|
142
|
-
|
|
143
|
-
失败时命令以非零退出码结束,stderr 返回类型化错误信封(`error.code`(如 3350001)/ `error.message` / `error.hint`),stdout 不会打印后端原始响应:
|
|
144
|
-
|
|
145
|
-
```json
|
|
146
|
-
{
|
|
147
|
-
"ok": false,
|
|
148
|
-
"identity": "user",
|
|
149
|
-
"error": {
|
|
150
|
-
"type": "api",
|
|
151
|
-
"subtype": "...",
|
|
152
|
-
"code": 3350001,
|
|
153
|
-
"message": "...",
|
|
154
|
-
"hint": "..."
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
| 字段 | 类型 | 说明 |
|
|
160
|
-
|------|------|------|
|
|
161
|
-
| `data.revision_id` | integer | 成功时返回更新后最新版本号 |
|
|
162
|
-
|
|
163
|
-
## 常见错误
|
|
164
|
-
|
|
165
|
-
| 错误码 | 含义 | 解决方案 |
|
|
166
|
-
|--------|------|----------|
|
|
167
|
-
| 3350001 | `block_id` 在当前页不存在,或 XML 格式 / 结构错误 | 重新 `slide.get` 拿最新 XML,确认 `block_id` 存在;检查 `replacement` / `insertion` 是否合法 XML |
|
|
168
|
-
| 400 | `parts` 长度超过 200 | 拆多次调用 |
|
|
169
|
-
| 3350002 | `revision_id` 不存在(超过当前版本号) | 用 `-1` 或实际存在的 `revision_id` |
|
|
170
|
-
| 400 | XML 格式错误 | `replacement` / `insertion` 必须为合法的 XML 片段,标签闭合 + 属性引号 |
|
|
171
|
-
| 403 | 权限不足 | 需要 `slides:presentation:update` 或 `slides:presentation:write_only` |
|
|
172
|
-
|
|
173
|
-
## 注意事项
|
|
174
|
-
|
|
175
|
-
1. **parts 原子事务**:任一条失败整批回滚,不会出现"前几条成功、后几条失败"的中间态。
|
|
176
|
-
2. **block_id 的获取**:`slide.get` 返回的 XML 里每个块(shape、img、table、chart 等)会带 3 位 short element ID,用这个值填 `block_id` / `insert_before_block_id`。
|
|
177
|
-
3. **`<img>` 必须用 file_token**:不能用外链 URL——先 [`slides +media-upload`](lark-slides-media-upload.md) 拿 token。
|
|
178
|
-
4. **不能字段级 patch**:要改一个块的某个属性(比如只改 `topLeftX`),得写整块新 XML 走 `block_replace`;API 不支持"只改一个字段"。
|
|
179
|
-
5. **`block_replace` 要求 `replacement` 根元素带 `id="<block_id>"`**:底层 API 的硬约束,缺失会返回 3350001。推荐走 shortcut [`+replace-slide`](lark-slides-replace-slide.md)——它会自动把 `id` 注入到 `replacement` 根元素上,用户写 XML 时不用自己加。
|
|
180
|
-
6. **`<shape>` 必须有 `<content/>` 子元素**:SML 2.0 schema 要求,缺失同样触发 3350001。shortcut [`+replace-slide`](lark-slides-replace-slide.md) 会自动注入 `<content/>`,直接调底层 API 需要自己加。
|
|
181
|
-
7. **执行前必做**:`lark-cli schema slides.xml_presentation.slide.replace` 查看最新参数结构。
|
|
182
|
-
|
|
183
|
-
## 相关命令
|
|
184
|
-
|
|
185
|
-
- [slides +replace-slide](lark-slides-replace-slide.md) — 块级替换 shortcut(推荐,自动注入 id)
|
|
186
|
-
- [xml_presentation.slide get](lark-slides-xml-presentation-slide-get.md) — 读原页拿 block short ID
|
|
187
|
-
- [slides +media-upload](lark-slides-media-upload.md) — 上传图片拿 file_token
|
|
188
|
-
- [lark-slides-edit-workflows.md](lark-slides-edit-workflows.md) — 读-改-写闭环 + 决策树
|
|
5
|
+
此文件仅保留旧路径兼容性;后续引用请使用新路径。
|
|
@@ -1,134 +1,5 @@
|
|
|
1
|
-
# lark-slides xml_presentations get
|
|
1
|
+
# lark-slides xml_presentations get(兼容入口)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
本文档已迁移至 [`cli/lark-slides-xml-presentations-get.md`](cli/lark-slides-xml-presentations-get.md)。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
## Shortcut
|
|
8
|
-
|
|
9
|
-
使用 `slides +xml-get` shortcut,可以把 XML 保存到本地文件,避免终端输出被截断。
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
lark-cli slides +xml-get --as user \
|
|
14
|
-
--presentation "slides_example_presentation_id" \
|
|
15
|
-
--output .lark-slides/plan/slides_example_presentation_id/readback.xml \
|
|
16
|
-
--json
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### 参数说明
|
|
20
|
-
|
|
21
|
-
| 参数 | 类型 | 必需 | 说明 |
|
|
22
|
-
|------|------|------|------|
|
|
23
|
-
| `--presentation` | string | 是 | 演示文稿的唯一标识符 |
|
|
24
|
-
| `--revision-id` | integer | 否 | 版本号,`-1` 表示最新版本 |
|
|
25
|
-
| `--output` | string | 是 | 本地文件,必须使用相对路径 |
|
|
26
|
-
| `--remove-attr-id` | flag | 否 | 移除 XML id 属性后读取 |
|
|
27
|
-
| `--json` | flag | 是 | 必须按照 json 格式输出 |
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
### 基础示例
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
lark-cli slides +xml-get --as user \
|
|
34
|
-
--presentation "slides_example_presentation_id" \
|
|
35
|
-
--output .lark-slides/plan/slides_example_presentation_id/readback.xml \
|
|
36
|
-
--json
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### 指定版本读取
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
lark-cli slides +xml-get --as user \
|
|
43
|
-
--presentation "slides_example_presentation_id" \
|
|
44
|
-
--revision-id 10 \
|
|
45
|
-
--output .lark-slides/plan/slides_example_presentation_id/readback-r10.xml \
|
|
46
|
-
--json
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### 移除 XML id 属性后读取
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
lark-cli slides +xml-get --as user \
|
|
53
|
-
--presentation "slides_example_presentation_id" \
|
|
54
|
-
--remove-attr-id \
|
|
55
|
-
--output .lark-slides/plan/slides_example_presentation_id/readback-no-id.xml \
|
|
56
|
-
--json
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
## 底层原生命令形态
|
|
61
|
-
|
|
62
|
-
```bash
|
|
63
|
-
lark-cli slides xml_presentations get --as user --params '<json_params>'
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### 参数说明
|
|
67
|
-
|
|
68
|
-
| 参数 | 类型 | 必需 | 说明 |
|
|
69
|
-
|------|------|------|------|
|
|
70
|
-
| `--params` | JSON string | 是 | 路径参数与查询参数,结构以 schema 为准 |
|
|
71
|
-
|
|
72
|
-
### params JSON 结构
|
|
73
|
-
|
|
74
|
-
```json
|
|
75
|
-
{
|
|
76
|
-
"xml_presentation_id": "slides_example_presentation_id",
|
|
77
|
-
"revision_id": -1
|
|
78
|
-
}
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
| 字段 | 类型 | 必需 | 说明 |
|
|
82
|
-
|------|------|------|------|
|
|
83
|
-
| `xml_presentation_id` | string | 是 | 演示文稿的唯一标识符 |
|
|
84
|
-
| `revision_id` | integer | 否 | 版本号,`-1` 表示最新版本 |
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
### 返回值
|
|
88
|
-
|
|
89
|
-
成功时返回演示文稿的完整信息:
|
|
90
|
-
|
|
91
|
-
```json
|
|
92
|
-
{
|
|
93
|
-
"ok": true,
|
|
94
|
-
"identity": "user",
|
|
95
|
-
"data": {
|
|
96
|
-
"xml_presentation": {
|
|
97
|
-
"presentation_id": "slides_example_presentation_id",
|
|
98
|
-
"revision_id": 1,
|
|
99
|
-
"content": "<presentation xmlns=\"http://www.larkoffice.com/sml/2.0\" height=\"540\" width=\"960\">...</presentation>"
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
### 返回字段说明
|
|
106
|
-
|
|
107
|
-
| 字段 | 类型 | 说明 |
|
|
108
|
-
|------|------|------|
|
|
109
|
-
| `data.xml_presentation.presentation_id` | string | 演示文稿唯一标识 |
|
|
110
|
-
| `data.xml_presentation.revision_id` | integer | 版本号 |
|
|
111
|
-
| `data.xml_presentation.content` | string | XML 格式的完整内容 |
|
|
112
|
-
|
|
113
|
-
### 常见错误
|
|
114
|
-
|
|
115
|
-
| 错误码 | 含义 | 解决方案 |
|
|
116
|
-
|--------|------|----------|
|
|
117
|
-
| 404 | 演示文稿不存在 | 检查 `xml_presentation_id` 是否正确 |
|
|
118
|
-
| 403 | 权限不足 | 检查是否拥有 `slides:presentation:read` scope,或是否有访问权限 |
|
|
119
|
-
| 400 | 参数格式错误 | 确保 `--params` 是合法的 JSON 字符串 |
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
### 注意事项
|
|
123
|
-
|
|
124
|
-
1. lark-slides 工作流默认使用 `slides +xml-get`;只有必须直接调底层 API 时,才使用
|
|
125
|
-
2. 直接调用底层 API 前,使用 `lark-cli schema slides.xml_presentations.get` 查看最新的参数结构
|
|
126
|
-
3. 返回的 XML 在 `data.xml_presentation.content` 字段中
|
|
127
|
-
4. 如果只需要部分信息,可以使用 `jq` 等工具过滤返回结果
|
|
128
|
-
5. 不要在普通工作流中把完整 XML 打到终端;用 `slides +xml-get --output` 保存文件
|
|
129
|
-
|
|
130
|
-
## 相关命令
|
|
131
|
-
|
|
132
|
-
- [slides +create](lark-slides-create.md) - 创建空白 PPT
|
|
133
|
-
- [xml_presentation.slide create](lark-slides-xml-presentation-slide-create.md) - 添加幻灯片页面
|
|
134
|
-
- [xml_presentation.slide delete](lark-slides-xml-presentation-slide-delete.md) - 删除幻灯片页面
|
|
5
|
+
此文件仅保留旧路径兼容性;后续引用请使用新路径。
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
2. 选择唯一 plan 目录:`.lark-slides/plan/<deck-or-task-id>/`。
|
|
11
11
|
3. 先创建目录:`mkdir -p .lark-slides/plan/<deck-or-task-id>`。
|
|
12
12
|
4. 写入 `.lark-slides/plan/<deck-or-task-id>/slide_plan.json`。
|
|
13
|
-
5. 读取 `xml-schema-quick-ref.md`、`visual-planning.md` 和 `asset-planning.md`。
|
|
13
|
+
5. 读取 `xml/xml-schema-quick-ref.md`、`visual-planning.md` 和 `asset-planning.md`。
|
|
14
14
|
6. 按 plan、visual planning 和 asset planning 规则逐页生成 XML,把 `layout_type`、`visual_focus`、`text_density` 转成具体页面几何和文本量约束,并把缺失素材转成可执行兜底视觉。
|
|
15
15
|
7. 创建 PPT 后用 `slides +xml-get` 回读,核对页面数量、关键元素和 plan 到 XML 的对应关系,空白 PPT 中没有 slide 元素。
|
|
16
16
|
|