@chengxianglibra/dsh-data-analysis 0.1.2 → 0.2.0

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.
Files changed (212) hide show
  1. package/README.md +136 -99
  2. package/cordis.patch.yml +1 -1
  3. package/lib/bin/environment.js +8 -6
  4. package/lib/client/credentials/changes.js +74 -0
  5. package/lib/client/credentials/create-datasource.js +126 -22
  6. package/lib/client/credentials/credential-draft.js +42 -0
  7. package/lib/client/credentials/defaults.js +11 -0
  8. package/lib/client/credentials/descriptions.js +46 -0
  9. package/lib/client/credentials/install.js +209 -81
  10. package/lib/client/credentials/model.js +323 -51
  11. package/lib/client/credentials/report-publishing.js +96 -0
  12. package/lib/client/credentials/styles.js +13 -9
  13. package/lib/client/i18n/context.js +22 -0
  14. package/lib/client/i18n/copy.js +57 -0
  15. package/lib/client/i18n/credentials.js +475 -0
  16. package/lib/client/i18n/host.js +27 -0
  17. package/lib/client/i18n/navigation.js +41 -0
  18. package/lib/client/i18n/presentation.js +577 -0
  19. package/lib/client/i18n/python.js +36 -0
  20. package/lib/client/i18n/semantic.js +441 -0
  21. package/lib/client/input-context.js +21 -0
  22. package/lib/client/python-tool/card.js +35 -0
  23. package/lib/client/python-tool/execution-error.js +35 -0
  24. package/lib/client/python-tool/install.js +9 -0
  25. package/lib/client/python-tool/model.js +101 -0
  26. package/lib/client/right-tabs/install.js +535 -0
  27. package/lib/client/right-tabs/live-delivery.js +58 -0
  28. package/lib/client/right-tabs/navigation.js +47 -0
  29. package/lib/client/right-tabs/page.js +178 -0
  30. package/lib/client/right-tabs/styles.js +11 -0
  31. package/lib/client/rpc.js +5 -0
  32. package/lib/client/semantic-reference.js +10 -0
  33. package/lib/client/workspace-header-action.js +14 -1
  34. package/lib/client/workspace-shortcuts.js +26 -0
  35. package/lib/client.js +365 -242
  36. package/lib/compatibility.js +1 -1
  37. package/lib/datasource/authoring.js +43 -4
  38. package/lib/datasource/bridge-programs.js +23 -20
  39. package/lib/datasource/bridge.js +46 -3
  40. package/lib/datasource/changes-contract.js +41 -0
  41. package/lib/datasource/changes.js +49 -0
  42. package/lib/datasource/configure.js +39 -0
  43. package/lib/datasource/defaults.js +25 -0
  44. package/lib/datasource/index.js +2 -1
  45. package/lib/datasource/python-options.js +21 -0
  46. package/lib/datasource/python.js +116 -25
  47. package/lib/datasource/rpc.js +75 -13
  48. package/lib/datasource/service.js +286 -11
  49. package/lib/datasource/test.js +2 -1
  50. package/lib/disclosure/activation.js +19 -7
  51. package/lib/disclosure/execution-guidance.js +52 -0
  52. package/lib/disclosure/help.js +4 -1
  53. package/lib/environment/runtime.js +35 -34
  54. package/lib/environment/workspace.js +18 -1
  55. package/lib/lifecycle.js +33 -0
  56. package/lib/plugin-agents.js +154 -0
  57. package/lib/plugin.js +94 -172
  58. package/lib/presentation/asset.js +34 -0
  59. package/lib/presentation/assets/portable.js +14 -14
  60. package/lib/presentation/assets/static.js +344 -73
  61. package/lib/presentation/build/index.js +3 -2
  62. package/lib/presentation/commit.js +19 -12
  63. package/lib/presentation/contracts/asset-path.js +9 -0
  64. package/lib/presentation/contracts/catalog.js +62 -0
  65. package/lib/presentation/contracts/charts.js +0 -23
  66. package/lib/presentation/contracts/index.js +17 -5
  67. package/lib/presentation/contracts/types.js +1 -1
  68. package/lib/presentation/delivery.js +45 -30
  69. package/lib/presentation/export-html.js +214 -0
  70. package/lib/presentation/files.js +4 -5
  71. package/lib/presentation/projection/index.js +2 -1
  72. package/lib/presentation/projection/program.js +2 -9
  73. package/lib/presentation/projection/sql-code.js +13 -13
  74. package/lib/presentation/reports.js +114 -17
  75. package/lib/presentation/rpc.js +96 -58
  76. package/lib/presentation/tool.js +6 -10
  77. package/lib/report-publishing/adapters.js +111 -0
  78. package/lib/report-publishing/config.js +69 -0
  79. package/lib/report-publishing/service.js +180 -0
  80. package/lib/rpc.js +49 -0
  81. package/lib/semantic-browser/contracts.js +17 -0
  82. package/lib/semantic-browser/program.js +10 -0
  83. package/lib/semantic-browser/service.js +40 -6
  84. package/lib/semantic-reference/bridge.js +10 -1
  85. package/lib/semantic-reference/contracts.js +20 -6
  86. package/lib/semantic-reference/environment.js +56 -0
  87. package/lib/semantic-reference/labels.js +16 -0
  88. package/lib/semantic-reference/rpc.js +39 -18
  89. package/lib/semantic-reference/search.js +5 -4
  90. package/lib/semantic-reference/usage.js +12 -3
  91. package/lib/tool-lifecycle.js +22 -0
  92. package/lib/types/client/credentials/changes.d.ts +9 -0
  93. package/lib/types/client/credentials/create-datasource.d.ts +3 -1
  94. package/lib/types/client/credentials/credential-draft.d.ts +14 -0
  95. package/lib/types/client/credentials/defaults.d.ts +2 -0
  96. package/lib/types/client/credentials/descriptions.d.ts +1 -0
  97. package/lib/types/client/credentials/install.d.ts +19 -1
  98. package/lib/types/client/credentials/model.d.ts +31 -11
  99. package/lib/types/client/credentials/report-publishing.d.ts +5 -0
  100. package/lib/types/client/credentials/styles.d.ts +1 -1
  101. package/lib/types/client/i18n/context.d.ts +17 -0
  102. package/lib/types/client/i18n/copy.d.ts +806 -0
  103. package/lib/types/client/i18n/credentials.d.ts +475 -0
  104. package/lib/types/client/i18n/host.d.ts +16 -0
  105. package/lib/types/client/i18n/navigation.d.ts +41 -0
  106. package/lib/types/client/i18n/presentation.d.ts +577 -0
  107. package/lib/types/client/i18n/python.d.ts +19 -0
  108. package/lib/types/client/i18n/semantic.d.ts +441 -0
  109. package/lib/types/client/input-context.d.ts +19 -0
  110. package/lib/types/client/presentation/ask-dsh.d.ts +4 -8
  111. package/lib/types/client/presentation/catalog-model.d.ts +24 -0
  112. package/lib/types/client/presentation/catalog.d.ts +20 -0
  113. package/lib/types/client/presentation/chart-tooltip.d.ts +2 -2
  114. package/lib/types/client/presentation/context-reference.d.ts +12 -0
  115. package/lib/types/client/presentation/copy-context.d.ts +2 -2
  116. package/lib/types/client/presentation/delivery-model.d.ts +27 -6
  117. package/lib/types/client/presentation/delivery.d.ts +8 -7
  118. package/lib/types/client/presentation/download.d.ts +2 -0
  119. package/lib/types/client/presentation/export-menu.d.ts +26 -0
  120. package/lib/types/client/presentation/export-view.d.ts +63 -0
  121. package/lib/types/client/presentation/host-entry.d.ts +8 -2
  122. package/lib/types/client/presentation/icons.d.ts +1 -1
  123. package/lib/types/client/presentation/model.d.ts +14 -15
  124. package/lib/types/client/presentation/reader.d.ts +15 -2
  125. package/lib/types/client/presentation/reference-source.d.ts +9 -0
  126. package/lib/types/client/presentation/source-code-model.d.ts +2 -1
  127. package/lib/types/client/presentation/source-code.d.ts +0 -5
  128. package/lib/types/client/presentation/source-dialog.d.ts +1 -2
  129. package/lib/types/client/presentation/sources.d.ts +5 -5
  130. package/lib/types/client/presentation/styles.d.ts +1 -1
  131. package/lib/types/client/presentation/table.d.ts +5 -1
  132. package/lib/types/client/python-tool/card.d.ts +2 -0
  133. package/lib/types/client/python-tool/execution-error.d.ts +3 -0
  134. package/lib/types/client/python-tool/install.d.ts +2 -0
  135. package/lib/types/client/python-tool/model.d.ts +20 -0
  136. package/lib/types/client/right-tabs/install.d.ts +18 -0
  137. package/lib/types/client/right-tabs/live-delivery.d.ts +8 -0
  138. package/lib/types/client/right-tabs/navigation.d.ts +17 -0
  139. package/lib/types/client/right-tabs/page.d.ts +36 -0
  140. package/lib/types/client/right-tabs/styles.d.ts +2 -0
  141. package/lib/types/client/rpc.d.ts +3 -0
  142. package/lib/types/client/semantic-reference.d.ts +4 -0
  143. package/lib/types/client/workspace-header-action.d.ts +1 -1
  144. package/lib/types/client/workspace-shortcuts.d.ts +15 -0
  145. package/lib/types/client.d.ts +6 -3
  146. package/lib/types/compatibility.d.ts +1 -1
  147. package/lib/types/datasource/authoring.d.ts +10 -0
  148. package/lib/types/datasource/bridge.d.ts +23 -2
  149. package/lib/types/datasource/changes-contract.d.ts +18 -0
  150. package/lib/types/datasource/changes.d.ts +15 -0
  151. package/lib/types/datasource/configure.d.ts +7 -0
  152. package/lib/types/datasource/defaults.d.ts +7 -0
  153. package/lib/types/datasource/index.d.ts +6 -1
  154. package/lib/types/datasource/python-options.d.ts +9 -0
  155. package/lib/types/datasource/python.d.ts +17 -2
  156. package/lib/types/datasource/rpc.d.ts +2 -1
  157. package/lib/types/datasource/service.d.ts +48 -5
  158. package/lib/types/datasource/test.d.ts +1 -1
  159. package/lib/types/disclosure/activation.d.ts +2 -1
  160. package/lib/types/disclosure/execution-guidance.d.ts +6 -0
  161. package/lib/types/disclosure/help.d.ts +1 -1
  162. package/lib/types/environment/types.d.ts +2 -1
  163. package/lib/types/environment/workspace.d.ts +1 -0
  164. package/lib/types/lifecycle.d.ts +8 -0
  165. package/lib/types/plugin-agents.d.ts +27 -0
  166. package/lib/types/plugin.d.ts +12 -28
  167. package/lib/types/presentation/asset.d.ts +6 -0
  168. package/lib/types/presentation/build/index.d.ts +7 -2
  169. package/lib/types/presentation/commit.d.ts +1 -1
  170. package/lib/types/presentation/contracts/asset-path.d.ts +2 -0
  171. package/lib/types/presentation/contracts/catalog.d.ts +27 -0
  172. package/lib/types/presentation/contracts/charts.d.ts +0 -2
  173. package/lib/types/presentation/contracts/types.d.ts +7 -4
  174. package/lib/types/presentation/delivery.d.ts +1 -1
  175. package/lib/types/presentation/export-html.d.ts +13 -0
  176. package/lib/types/presentation/reports.d.ts +6 -1
  177. package/lib/types/presentation/rpc.d.ts +3 -2
  178. package/lib/types/presentation/tool.d.ts +2 -2
  179. package/lib/types/report-publishing/adapters.d.ts +6 -0
  180. package/lib/types/report-publishing/config.d.ts +22 -0
  181. package/lib/types/report-publishing/service.d.ts +68 -0
  182. package/lib/types/rpc.d.ts +3 -0
  183. package/lib/types/semantic-browser/contracts.d.ts +7 -0
  184. package/lib/types/semantic-browser/service.d.ts +7 -1
  185. package/lib/types/semantic-reference/bridge.d.ts +1 -0
  186. package/lib/types/semantic-reference/contracts.d.ts +5 -2
  187. package/lib/types/semantic-reference/environment.d.ts +22 -0
  188. package/lib/types/semantic-reference/labels.d.ts +16 -0
  189. package/lib/types/semantic-reference/rpc.d.ts +1 -1
  190. package/lib/types/semantic-reference/search.d.ts +1 -1
  191. package/lib/types/tool-lifecycle.d.ts +4 -0
  192. package/lib/types/workspace-identity.d.ts +6 -0
  193. package/lib/workspace-identity.js +9 -0
  194. package/package.json +83 -61
  195. package/python/presentation-kit/dist/dsh_data_analysis_presentation_kit-1.1.0-py3-none-any.whl +0 -0
  196. package/skills/dsh-data-analysis-files/SKILL.md +32 -0
  197. package/skills/dsh-data-analysis-files/references/examples.md +93 -0
  198. package/skills/dsh-data-analysis-presentation/SKILL.md +10 -6
  199. package/skills/dsh-data-analysis-presentation/references/examples/artifact.draft.json +13 -4
  200. package/skills/dsh-data-analysis-presentation/references/examples/charts.draft.json +3 -2
  201. package/skills/dsh-data-analysis-presentation/references/examples/comparison.draft.json +3 -2
  202. package/skills/dsh-data-analysis-presentation/references/examples/computed-sources.draft.json +12 -5
  203. package/skills/dsh-data-analysis-presentation/references/examples/computed.draft.json +3 -2
  204. package/skills/dsh-data-analysis-presentation/references/examples/interaction.draft.json +3 -2
  205. package/skills/dsh-data-analysis-presentation/references/examples/source-only.draft.json +12 -4
  206. package/skills/dsh-data-analysis-presentation/references/examples.md +3 -1
  207. package/skills/dsh-data-analysis-presentation/references/export-html.md +7 -0
  208. package/skills/dsh-data-analysis-presentation/references/interaction.md +1 -1
  209. package/skills/dsh-data-analysis-presentation/references/narrative.md +1 -1
  210. package/skills/dsh-data-analysis-presentation/references/publishing.md +3 -0
  211. package/skills/dsh-data-analysis-presentation/references/schema.md +25 -1
  212. package/lib/types/client/presentation/install.d.ts +0 -15
@@ -0,0 +1,441 @@
1
+ /** Plugin-owned copy; keys are stable identifiers, never business labels. */
2
+ export declare const zh: {
3
+ readonly 'marivo.semantic.second': "秒";
4
+ readonly 'marivo.semantic.minute': "分钟";
5
+ readonly 'marivo.semantic.hour': "小时";
6
+ readonly 'marivo.semantic.day': "日";
7
+ readonly 'marivo.semantic.week': "周";
8
+ readonly 'marivo.semantic.month': "月";
9
+ readonly 'marivo.semantic.quarter': "季度";
10
+ readonly 'marivo.semantic.year': "年";
11
+ readonly 'marivo.semantic.structured-display-is-not-yet-supported-for-this-expression': "当前表达式语法尚不支持结构化展示";
12
+ readonly 'marivo.semantic.no-expression-description-is-available-for-this-definition': "当前定义没有可用的表达式说明";
13
+ readonly 'marivo.semantic.expression-exceeds-the-description-size-limit': "表达式超过描述大小上限";
14
+ readonly 'marivo.semantic.aggregation': "聚合";
15
+ readonly 'marivo.semantic.ratio': "比率";
16
+ readonly 'marivo.semantic.linear-combination': "线性组合";
17
+ readonly 'marivo.semantic.cumulative': "累计";
18
+ readonly 'marivo.semantic.ibis-expression': "Ibis 表达式";
19
+ readonly 'marivo.semantic.cumulative-from-the-beginning-of-all-history': "从全部历史起点累计";
20
+ readonly 'marivo.semantic.rolling-cumulative-over-value-value': "滚动累计 {p0} {p1}";
21
+ readonly 'marivo.semantic.from': "从";
22
+ readonly 'marivo.semantic.of': "的";
23
+ readonly 'marivo.semantic.period-start-resetting-each-period': "周期起点累计,每个周期重新开始";
24
+ readonly 'marivo.semantic.cumulative-from-the-current-value-resetting-each-period': "从当前{p0}起点累计,每个周期重新开始";
25
+ readonly 'marivo.semantic.this-cumulative-rule-cannot-be-displayed-yet': "累计规则暂不支持展示";
26
+ readonly 'marivo.semantic.the-current-runtime-did-not-provide-displayable-ibis-expression': "当前 Runtime 未提供可展示的 Ibis 表达式文本。";
27
+ readonly 'marivo.semantic.expression-copied': "表达式已复制";
28
+ readonly 'marivo.semantic.copy-failed-select-the-code-to-copy-manually': "复制失败,请手动选择代码复制。";
29
+ readonly 'marivo.semantic.copy-ibis-expression': "复制 Ibis 表达式";
30
+ readonly 'marivo.semantic.constant-values-are-hidden-as-redacted': "常量值已隐藏为 REDACTED 标记。";
31
+ readonly 'marivo.semantic.aggregation-target': "聚合目标";
32
+ readonly 'marivo.semantic.value': "数值";
33
+ readonly 'marivo.semantic.weight': "权重";
34
+ readonly 'marivo.semantic.numerator': "分子";
35
+ readonly 'marivo.semantic.denominator': "分母";
36
+ readonly 'marivo.semantic.term-value-value': "第 {p0} 项({p1})";
37
+ readonly 'marivo.semantic.base-metric': "基础指标";
38
+ readonly 'marivo.semantic.base-metric-558': "基础指标:";
39
+ readonly 'marivo.semantic.this-computation-type-cannot-be-displayed-yet': "当前计算类型暂不支持展示";
40
+ readonly 'marivo.semantic.this-object-has-no-public-computation-definition': "当前对象没有公开的计算定义。";
41
+ readonly 'marivo.semantic.cumulative-time-axis': "累计时间轴";
42
+ readonly 'marivo.semantic.uses-the-default-time-axis-determined-by-observation-context': "使用默认时间轴,需观察上下文确定";
43
+ readonly 'marivo.semantic.time-grain-timezone': "时间粒度 / 时区";
44
+ readonly 'marivo.semantic.not-declared': "未声明";
45
+ readonly 'marivo.semantic.period-calendar': "周期日历";
46
+ readonly 'marivo.semantic.calendar-level': "日历层级";
47
+ readonly 'marivo.semantic.calendar-boundary-timezone': "日历边界时区";
48
+ readonly 'marivo.semantic.filters-in-definition': "定义内过滤条件";
49
+ readonly 'marivo.semantic.determined-by-the-formula-and-its-components': "由计算公式及组成对象确定";
50
+ readonly 'marivo.semantic.not-applicable': "不适用";
51
+ readonly 'marivo.semantic.unsupported-rule-status-value': "暂不支持的规则状态:{p0}";
52
+ readonly 'marivo.semantic.time-fold-rule': "时间折叠规则";
53
+ readonly 'marivo.semantic.declared-rule': "声明规则";
54
+ readonly 'marivo.semantic.metric-override': "指标覆盖";
55
+ readonly 'marivo.semantic.effective-rule': "有效规则";
56
+ readonly 'marivo.semantic.metric-computation': "指标计算口径";
57
+ readonly 'marivo.semantic.computation': "计算口径";
58
+ readonly 'marivo.semantic.referenced-object-definitions': "引用对象定义";
59
+ readonly 'marivo.semantic.showing-the-first-40-referenced-definitions-click-an-object': "当前展示前 40 个引用对象的定义,点击对象名称可继续查看。";
60
+ readonly 'marivo.semantic.data-source-and-grain': "数据来源与粒度";
61
+ readonly 'marivo.semantic.primary-key': "主键:";
62
+ readonly 'marivo.semantic.expand-one-more-level': "再展开一层";
63
+ readonly 'marivo.semantic.zoom-in': "放大关系图";
64
+ readonly 'marivo.semantic.zoom-out': "缩小关系图";
65
+ readonly 'marivo.semantic.center-graph': "回到中心";
66
+ readonly 'marivo.semantic.declared-relationships-level': "对象声明关系 · 第";
67
+ readonly 'marivo.semantic.drag-the-background-to-pan-click-an-object-for': "层 · 拖动空白处平移,点击对象查看详情";
68
+ readonly 'marivo.semantic.the-graph-shows-at-most-60-objects-see-the': "图中最多显示 60 个对象;完整关联可在关系列表中查看。";
69
+ readonly 'marivo.semantic.local-relationship-graph': "当前对象的局部关系图";
70
+ readonly 'marivo.semantic.object-relationships-an-equivalent-clickable-list-is-available-below': "对象关系;下方提供同等的可点击关系列表";
71
+ readonly 'marivo.semantic.view-value': "查看 {p0}";
72
+ readonly 'marivo.semantic.relationships': "图中关系(";
73
+ readonly 'marivo.semantic.owning-domain': "所属业务域";
74
+ readonly 'marivo.semantic.owner': "负责人";
75
+ readonly 'marivo.semantic.default-domain': "默认业务域";
76
+ readonly 'marivo.semantic.engine-type': "引擎类型";
77
+ readonly 'marivo.semantic.owning-datasource': "所属数据源";
78
+ readonly 'marivo.semantic.primary-key-600': "主键";
79
+ readonly 'marivo.semantic.owning-entity': "所属实体";
80
+ readonly 'marivo.semantic.additivity': "可加性";
81
+ readonly 'marivo.semantic.parse-kind': "解析类型";
82
+ readonly 'marivo.semantic.data-type': "数据类型";
83
+ readonly 'marivo.semantic.time-grain': "时间粒度";
84
+ readonly 'marivo.semantic.format': "格式";
85
+ readonly 'marivo.semantic.timezone': "时区";
86
+ readonly 'marivo.semantic.default-time-dimension': "默认时间维度";
87
+ readonly 'marivo.semantic.sample-interval': "采样间隔";
88
+ readonly 'marivo.semantic.metric-type': "指标类型";
89
+ readonly 'marivo.semantic.declared-entities': "声明实体";
90
+ readonly 'marivo.semantic.root-entity': "根实体";
91
+ readonly 'marivo.semantic.aggregation-method': "聚合方式";
92
+ readonly 'marivo.semantic.aggregation-object': "聚合对象";
93
+ readonly 'marivo.semantic.aggregation-object-type': "聚合对象类型";
94
+ readonly 'marivo.semantic.measure-source': "度量来源";
95
+ readonly 'marivo.semantic.time-fold': "时间折叠";
96
+ readonly 'marivo.semantic.state-time-dimension': "状态时间维度";
97
+ readonly 'marivo.semantic.fanout-policy': "扇出策略";
98
+ readonly 'marivo.semantic.fixed-filter': "固定筛选";
99
+ readonly 'marivo.semantic.effective-entities': "有效实体";
100
+ readonly 'marivo.semantic.candidate-dimensions': "候选维度";
101
+ readonly 'marivo.semantic.candidate-time-dimensions': "候选时间维度";
102
+ readonly 'marivo.semantic.measure-lineage': "度量来源关系";
103
+ readonly 'marivo.semantic.weighted-value': "加权值";
104
+ readonly 'marivo.semantic.composition': "组合方式";
105
+ readonly 'marivo.semantic.components': "组成对象";
106
+ readonly 'marivo.semantic.linear-terms': "线性项";
107
+ readonly 'marivo.semantic.required-relationships': "所需关系";
108
+ readonly 'marivo.semantic.parity-status': "一致性状态";
109
+ readonly 'marivo.semantic.from-entity': "起始实体";
110
+ readonly 'marivo.semantic.to-entity': "目标实体";
111
+ readonly 'marivo.semantic.from-keys': "起始连接键";
112
+ readonly 'marivo.semantic.to-keys': "目标连接键";
113
+ readonly 'marivo.semantic.source-entity': "来源实体";
114
+ readonly 'marivo.semantic.identity-dimension': "身份维度";
115
+ readonly 'marivo.semantic.occurrence-time': "发生时间";
116
+ readonly 'marivo.semantic.participants': "参与者";
117
+ readonly 'marivo.semantic.event-predicate-type': "事件筛选类型";
118
+ readonly 'marivo.semantic.definition-fingerprint': "定义指纹";
119
+ readonly 'marivo.semantic.subject': "主体";
120
+ readonly 'marivo.semantic.states': "状态";
121
+ readonly 'marivo.semantic.initial-events': "初始事件";
122
+ readonly 'marivo.semantic.transitions': "状态转换";
123
+ readonly 'marivo.semantic.date-dimension': "日期维度";
124
+ readonly 'marivo.semantic.boundary-timezone': "边界时区";
125
+ readonly 'marivo.semantic.coverage': "覆盖范围";
126
+ readonly 'marivo.semantic.correspondences': "对应关系";
127
+ readonly 'marivo.semantic.snapshot-status': "快照状态";
128
+ readonly 'marivo.semantic.snapshot-digest': "快照摘要";
129
+ readonly 'marivo.semantic.occurrence-id': "发生标识";
130
+ readonly 'marivo.semantic.start-time': "开始时间";
131
+ readonly 'marivo.semantic.end-time': "结束时间";
132
+ readonly 'marivo.semantic.category': "分类";
133
+ readonly 'marivo.semantic.occurrence-count': "发生次数";
134
+ readonly 'marivo.semantic.working-day-dimension': "工作日维度";
135
+ readonly 'marivo.semantic.source-type': "来源类型";
136
+ readonly 'marivo.semantic.source-table': "来源表";
137
+ readonly 'marivo.semantic.source-database': "来源库";
138
+ readonly 'marivo.semantic.parents': "上级对象(parents)";
139
+ readonly 'marivo.semantic.children': "下级对象(children)";
140
+ readonly 'marivo.semantic.dependents': "引用此对象(dependents)";
141
+ readonly 'marivo.semantic.level-key': "层级键";
142
+ readonly 'marivo.semantic.period-count': "周期数";
143
+ readonly 'marivo.semantic.direct-finer-levels': "直接细粒度层级";
144
+ readonly 'marivo.semantic.direct-coarser-levels': "直接粗粒度层级";
145
+ readonly 'marivo.semantic.rollup-targets': "汇总目标";
146
+ readonly 'marivo.semantic.version-type': "版本类型";
147
+ readonly 'marivo.semantic.version-partition-field': "版本分区字段";
148
+ readonly 'marivo.semantic.version-grain': "版本粒度";
149
+ readonly 'marivo.semantic.version-timezone': "版本时区";
150
+ readonly 'marivo.semantic.version-format': "版本格式";
151
+ readonly 'marivo.semantic.valid-from': "有效起点";
152
+ readonly 'marivo.semantic.valid-to': "有效终点";
153
+ readonly 'marivo.semantic.validity-interval': "有效区间";
154
+ readonly 'marivo.semantic.open-ended-value': "开放终点值";
155
+ readonly 'marivo.semantic.workspace-is-unavailable-select-it-again': "Workspace 已不可用,请重新选择。";
156
+ readonly 'marivo.semantic.cannot-load-the-semantic-layer-please-retry': "无法加载语义层,请重试。";
157
+ readonly 'marivo.semantic.cannot-load-the-semantic-layer-check-the-connection-and': "无法加载语义层,请检查连接后重试。";
158
+ readonly 'marivo.semantic.added-to-question': "已加入提问";
159
+ readonly 'marivo.semantic.could-not-add-to-the-question-the-session-workspace': "加入提问失败,会话、Workspace 或草稿可能已变化,请检查后重试。";
160
+ readonly 'marivo.semantic.copy-failed-select-the-text-to-copy-manually': "复制失败,请手动选择文字复制。";
161
+ readonly 'marivo.semantic.back-to-list': "返回列表";
162
+ readonly 'marivo.semantic.back-to-previous-object': "返回上个对象";
163
+ readonly 'marivo.semantic.copy-reference': "复制引用";
164
+ readonly 'marivo.semantic.no-input-is-available-for-the-session-owning-this': "当前页面没有可用的所属会话输入框";
165
+ readonly 'marivo.semantic.adding': "正在加入…";
166
+ readonly 'marivo.semantic.add-to-question': "加入提问";
167
+ readonly 'marivo.semantic.object-detail-categories': "对象详情分类";
168
+ readonly 'marivo.semantic.overview': "概览";
169
+ readonly 'marivo.semantic.definition': "定义";
170
+ readonly 'marivo.semantic.relationships-692': "关系";
171
+ readonly 'marivo.semantic.business-definition': "业务定义";
172
+ readonly 'marivo.semantic.no-business-definition': "未填写业务定义";
173
+ readonly 'marivo.semantic.no-domain-specified': "未指定业务域";
174
+ readonly 'marivo.semantic.usage-constraints': "使用约束";
175
+ readonly 'marivo.semantic.additional-properties': "补充属性";
176
+ readonly 'marivo.semantic.semantic-properties': "语义属性";
177
+ readonly 'marivo.semantic.definition-location': "定义位置";
178
+ readonly 'marivo.semantic.only-the-datasource-type-is-shown-here-without-connection': "此处仅展示数据源类型,不展示连接配置或凭证。";
179
+ readonly 'marivo.semantic.file-sources-show-only-their-type-file-addresses-and': "文件来源仅展示类型;文件地址与请求配置不在此页面披露。";
180
+ readonly 'marivo.semantic.catalog-declared-relationships-candidate-dimensions-do-not-mean-every': "Catalog 声明的对象关系。候选维度不代表任意查询组合已通过验证。";
181
+ readonly 'marivo.semantic.collapse-graph': "收起关系图";
182
+ readonly 'marivo.semantic.view-graph': "查看关系图";
183
+ readonly 'marivo.semantic.no-relationships-declared': "没有声明关联对象。";
184
+ readonly 'marivo.semantic.object-not-included-in-this-catalog': " · 当前目录未包含此对象";
185
+ readonly 'marivo.semantic.semantic-object-browser': "语义层对象浏览器";
186
+ readonly 'marivo.semantic.updated': "更新于";
187
+ readonly 'marivo.semantic.refresh-semantic-layer': "刷新语义层";
188
+ readonly 'marivo.semantic.current-semantic-definitions-are-shown-here-report-data-and': "此处展示当前语义定义;报告数据与来源仍是生成时的快照。";
189
+ readonly 'marivo.semantic.workspace-list-unavailable-check-the-host-connection': "Workspace 列表暂不可用,请检查 Host 连接。";
190
+ readonly 'marivo.semantic.loading-semantic-objects': "正在读取语义层对象…";
191
+ readonly 'marivo.semantic.previously-loaded-content-is-still-shown': "当前仍显示上次加载内容。";
192
+ readonly 'marivo.semantic.previously-loaded-content-is-still-shown-714': " 当前显示上次成功加载的内容。";
193
+ readonly 'marivo.semantic.loading-workspaces': "正在读取 Workspace 列表…";
194
+ readonly 'marivo.semantic.this-session-has-no-workspace-return-to-the-session': "当前会话未绑定 Workspace,请返回会话后重试。";
195
+ readonly 'marivo.semantic.loading-object-catalog': "正在加载对象目录";
196
+ readonly 'marivo.semantic.object-catalog-not-loaded': "尚未加载对象目录";
197
+ readonly 'marivo.semantic.this-project-has-no-semantic-objects': "当前项目没有语义层对象。";
198
+ readonly 'marivo.semantic.object-categories': "对象分类";
199
+ readonly 'marivo.semantic.domain': "业务域";
200
+ readonly 'marivo.semantic.filter-domains': "筛选业务域";
201
+ readonly 'marivo.semantic.all-domains': "全部业务域";
202
+ readonly 'marivo.semantic.all-objects': "全部对象";
203
+ readonly 'marivo.semantic.object-list': "对象列表";
204
+ readonly 'marivo.semantic.search-semantic-objects': "搜索语义对象";
205
+ readonly 'marivo.semantic.search-names-references-and-business-definitions': "搜索名称、引用、业务定义";
206
+ readonly 'marivo.semantic.objects': "个对象";
207
+ readonly 'marivo.semantic.no-matching-objects-adjust-the-search-or-filters': "没有匹配对象,请调整搜索或筛选条件。";
208
+ readonly 'marivo.semantic.object-details': "对象详情";
209
+ readonly 'marivo.semantic.the-selected-object-is-no-longer-in-this-catalog': "所选对象已不在当前 Catalog 中,请重新选择。";
210
+ readonly 'marivo.semantic.select-an-object-to-view-its-business-definition-and': "选择一个对象,查看业务定义与关联。";
211
+ readonly 'marivo.semantic.not-in-this-catalog': "(当前目录未包含)";
212
+ readonly 'marivo.semantic.dimension': "维度";
213
+ readonly 'marivo.semantic.measure': "度量";
214
+ readonly 'marivo.semantic.time-dimension': "时间维度";
215
+ readonly 'marivo.semantic.relationship': "关系";
216
+ readonly 'marivo.semantic.event': "事件";
217
+ readonly 'marivo.semantic.state-model': "状态模型";
218
+ readonly 'marivo.semantic.temporal-set': "时间集合";
219
+ readonly 'marivo.semantic.work-schedule': "工作日程";
220
+ readonly 'marivo.semantic.entity': "实体";
221
+ };
222
+ export declare const en: {
223
+ 'marivo.semantic.second': string;
224
+ 'marivo.semantic.minute': string;
225
+ 'marivo.semantic.hour': string;
226
+ 'marivo.semantic.day': string;
227
+ 'marivo.semantic.week': string;
228
+ 'marivo.semantic.month': string;
229
+ 'marivo.semantic.quarter': string;
230
+ 'marivo.semantic.year': string;
231
+ 'marivo.semantic.structured-display-is-not-yet-supported-for-this-expression': string;
232
+ 'marivo.semantic.no-expression-description-is-available-for-this-definition': string;
233
+ 'marivo.semantic.expression-exceeds-the-description-size-limit': string;
234
+ 'marivo.semantic.aggregation': string;
235
+ 'marivo.semantic.ratio': string;
236
+ 'marivo.semantic.linear-combination': string;
237
+ 'marivo.semantic.cumulative': string;
238
+ 'marivo.semantic.ibis-expression': string;
239
+ 'marivo.semantic.cumulative-from-the-beginning-of-all-history': string;
240
+ 'marivo.semantic.rolling-cumulative-over-value-value': string;
241
+ 'marivo.semantic.from': string;
242
+ 'marivo.semantic.of': string;
243
+ 'marivo.semantic.period-start-resetting-each-period': string;
244
+ 'marivo.semantic.cumulative-from-the-current-value-resetting-each-period': string;
245
+ 'marivo.semantic.this-cumulative-rule-cannot-be-displayed-yet': string;
246
+ 'marivo.semantic.the-current-runtime-did-not-provide-displayable-ibis-expression': string;
247
+ 'marivo.semantic.expression-copied': string;
248
+ 'marivo.semantic.copy-failed-select-the-code-to-copy-manually': string;
249
+ 'marivo.semantic.copy-ibis-expression': string;
250
+ 'marivo.semantic.constant-values-are-hidden-as-redacted': string;
251
+ 'marivo.semantic.aggregation-target': string;
252
+ 'marivo.semantic.value': string;
253
+ 'marivo.semantic.weight': string;
254
+ 'marivo.semantic.numerator': string;
255
+ 'marivo.semantic.denominator': string;
256
+ 'marivo.semantic.term-value-value': string;
257
+ 'marivo.semantic.base-metric': string;
258
+ 'marivo.semantic.base-metric-558': string;
259
+ 'marivo.semantic.this-computation-type-cannot-be-displayed-yet': string;
260
+ 'marivo.semantic.this-object-has-no-public-computation-definition': string;
261
+ 'marivo.semantic.cumulative-time-axis': string;
262
+ 'marivo.semantic.uses-the-default-time-axis-determined-by-observation-context': string;
263
+ 'marivo.semantic.time-grain-timezone': string;
264
+ 'marivo.semantic.not-declared': string;
265
+ 'marivo.semantic.period-calendar': string;
266
+ 'marivo.semantic.calendar-level': string;
267
+ 'marivo.semantic.calendar-boundary-timezone': string;
268
+ 'marivo.semantic.filters-in-definition': string;
269
+ 'marivo.semantic.determined-by-the-formula-and-its-components': string;
270
+ 'marivo.semantic.not-applicable': string;
271
+ 'marivo.semantic.unsupported-rule-status-value': string;
272
+ 'marivo.semantic.time-fold-rule': string;
273
+ 'marivo.semantic.declared-rule': string;
274
+ 'marivo.semantic.metric-override': string;
275
+ 'marivo.semantic.effective-rule': string;
276
+ 'marivo.semantic.metric-computation': string;
277
+ 'marivo.semantic.computation': string;
278
+ 'marivo.semantic.referenced-object-definitions': string;
279
+ 'marivo.semantic.showing-the-first-40-referenced-definitions-click-an-object': string;
280
+ 'marivo.semantic.data-source-and-grain': string;
281
+ 'marivo.semantic.primary-key': string;
282
+ 'marivo.semantic.expand-one-more-level': string;
283
+ 'marivo.semantic.zoom-in': string;
284
+ 'marivo.semantic.zoom-out': string;
285
+ 'marivo.semantic.center-graph': string;
286
+ 'marivo.semantic.declared-relationships-level': string;
287
+ 'marivo.semantic.drag-the-background-to-pan-click-an-object-for': string;
288
+ 'marivo.semantic.the-graph-shows-at-most-60-objects-see-the': string;
289
+ 'marivo.semantic.local-relationship-graph': string;
290
+ 'marivo.semantic.object-relationships-an-equivalent-clickable-list-is-available-below': string;
291
+ 'marivo.semantic.view-value': string;
292
+ 'marivo.semantic.relationships': string;
293
+ 'marivo.semantic.owning-domain': string;
294
+ 'marivo.semantic.owner': string;
295
+ 'marivo.semantic.default-domain': string;
296
+ 'marivo.semantic.engine-type': string;
297
+ 'marivo.semantic.owning-datasource': string;
298
+ 'marivo.semantic.primary-key-600': string;
299
+ 'marivo.semantic.owning-entity': string;
300
+ 'marivo.semantic.additivity': string;
301
+ 'marivo.semantic.parse-kind': string;
302
+ 'marivo.semantic.data-type': string;
303
+ 'marivo.semantic.time-grain': string;
304
+ 'marivo.semantic.format': string;
305
+ 'marivo.semantic.timezone': string;
306
+ 'marivo.semantic.default-time-dimension': string;
307
+ 'marivo.semantic.sample-interval': string;
308
+ 'marivo.semantic.metric-type': string;
309
+ 'marivo.semantic.declared-entities': string;
310
+ 'marivo.semantic.root-entity': string;
311
+ 'marivo.semantic.aggregation-method': string;
312
+ 'marivo.semantic.aggregation-object': string;
313
+ 'marivo.semantic.aggregation-object-type': string;
314
+ 'marivo.semantic.measure-source': string;
315
+ 'marivo.semantic.time-fold': string;
316
+ 'marivo.semantic.state-time-dimension': string;
317
+ 'marivo.semantic.fanout-policy': string;
318
+ 'marivo.semantic.fixed-filter': string;
319
+ 'marivo.semantic.effective-entities': string;
320
+ 'marivo.semantic.candidate-dimensions': string;
321
+ 'marivo.semantic.candidate-time-dimensions': string;
322
+ 'marivo.semantic.measure-lineage': string;
323
+ 'marivo.semantic.weighted-value': string;
324
+ 'marivo.semantic.composition': string;
325
+ 'marivo.semantic.components': string;
326
+ 'marivo.semantic.linear-terms': string;
327
+ 'marivo.semantic.required-relationships': string;
328
+ 'marivo.semantic.parity-status': string;
329
+ 'marivo.semantic.from-entity': string;
330
+ 'marivo.semantic.to-entity': string;
331
+ 'marivo.semantic.from-keys': string;
332
+ 'marivo.semantic.to-keys': string;
333
+ 'marivo.semantic.source-entity': string;
334
+ 'marivo.semantic.identity-dimension': string;
335
+ 'marivo.semantic.occurrence-time': string;
336
+ 'marivo.semantic.participants': string;
337
+ 'marivo.semantic.event-predicate-type': string;
338
+ 'marivo.semantic.definition-fingerprint': string;
339
+ 'marivo.semantic.subject': string;
340
+ 'marivo.semantic.states': string;
341
+ 'marivo.semantic.initial-events': string;
342
+ 'marivo.semantic.transitions': string;
343
+ 'marivo.semantic.date-dimension': string;
344
+ 'marivo.semantic.boundary-timezone': string;
345
+ 'marivo.semantic.coverage': string;
346
+ 'marivo.semantic.correspondences': string;
347
+ 'marivo.semantic.snapshot-status': string;
348
+ 'marivo.semantic.snapshot-digest': string;
349
+ 'marivo.semantic.occurrence-id': string;
350
+ 'marivo.semantic.start-time': string;
351
+ 'marivo.semantic.end-time': string;
352
+ 'marivo.semantic.category': string;
353
+ 'marivo.semantic.occurrence-count': string;
354
+ 'marivo.semantic.working-day-dimension': string;
355
+ 'marivo.semantic.source-type': string;
356
+ 'marivo.semantic.source-table': string;
357
+ 'marivo.semantic.source-database': string;
358
+ 'marivo.semantic.parents': string;
359
+ 'marivo.semantic.children': string;
360
+ 'marivo.semantic.dependents': string;
361
+ 'marivo.semantic.level-key': string;
362
+ 'marivo.semantic.period-count': string;
363
+ 'marivo.semantic.direct-finer-levels': string;
364
+ 'marivo.semantic.direct-coarser-levels': string;
365
+ 'marivo.semantic.rollup-targets': string;
366
+ 'marivo.semantic.version-type': string;
367
+ 'marivo.semantic.version-partition-field': string;
368
+ 'marivo.semantic.version-grain': string;
369
+ 'marivo.semantic.version-timezone': string;
370
+ 'marivo.semantic.version-format': string;
371
+ 'marivo.semantic.valid-from': string;
372
+ 'marivo.semantic.valid-to': string;
373
+ 'marivo.semantic.validity-interval': string;
374
+ 'marivo.semantic.open-ended-value': string;
375
+ 'marivo.semantic.workspace-is-unavailable-select-it-again': string;
376
+ 'marivo.semantic.cannot-load-the-semantic-layer-please-retry': string;
377
+ 'marivo.semantic.cannot-load-the-semantic-layer-check-the-connection-and': string;
378
+ 'marivo.semantic.added-to-question': string;
379
+ 'marivo.semantic.could-not-add-to-the-question-the-session-workspace': string;
380
+ 'marivo.semantic.copy-failed-select-the-text-to-copy-manually': string;
381
+ 'marivo.semantic.back-to-list': string;
382
+ 'marivo.semantic.back-to-previous-object': string;
383
+ 'marivo.semantic.copy-reference': string;
384
+ 'marivo.semantic.no-input-is-available-for-the-session-owning-this': string;
385
+ 'marivo.semantic.adding': string;
386
+ 'marivo.semantic.add-to-question': string;
387
+ 'marivo.semantic.object-detail-categories': string;
388
+ 'marivo.semantic.overview': string;
389
+ 'marivo.semantic.definition': string;
390
+ 'marivo.semantic.relationships-692': string;
391
+ 'marivo.semantic.business-definition': string;
392
+ 'marivo.semantic.no-business-definition': string;
393
+ 'marivo.semantic.no-domain-specified': string;
394
+ 'marivo.semantic.usage-constraints': string;
395
+ 'marivo.semantic.additional-properties': string;
396
+ 'marivo.semantic.semantic-properties': string;
397
+ 'marivo.semantic.definition-location': string;
398
+ 'marivo.semantic.only-the-datasource-type-is-shown-here-without-connection': string;
399
+ 'marivo.semantic.file-sources-show-only-their-type-file-addresses-and': string;
400
+ 'marivo.semantic.catalog-declared-relationships-candidate-dimensions-do-not-mean-every': string;
401
+ 'marivo.semantic.collapse-graph': string;
402
+ 'marivo.semantic.view-graph': string;
403
+ 'marivo.semantic.no-relationships-declared': string;
404
+ 'marivo.semantic.object-not-included-in-this-catalog': string;
405
+ 'marivo.semantic.semantic-object-browser': string;
406
+ 'marivo.semantic.updated': string;
407
+ 'marivo.semantic.refresh-semantic-layer': string;
408
+ 'marivo.semantic.current-semantic-definitions-are-shown-here-report-data-and': string;
409
+ 'marivo.semantic.workspace-list-unavailable-check-the-host-connection': string;
410
+ 'marivo.semantic.loading-semantic-objects': string;
411
+ 'marivo.semantic.previously-loaded-content-is-still-shown': string;
412
+ 'marivo.semantic.previously-loaded-content-is-still-shown-714': string;
413
+ 'marivo.semantic.loading-workspaces': string;
414
+ 'marivo.semantic.this-session-has-no-workspace-return-to-the-session': string;
415
+ 'marivo.semantic.loading-object-catalog': string;
416
+ 'marivo.semantic.object-catalog-not-loaded': string;
417
+ 'marivo.semantic.this-project-has-no-semantic-objects': string;
418
+ 'marivo.semantic.object-categories': string;
419
+ 'marivo.semantic.domain': string;
420
+ 'marivo.semantic.filter-domains': string;
421
+ 'marivo.semantic.all-domains': string;
422
+ 'marivo.semantic.all-objects': string;
423
+ 'marivo.semantic.object-list': string;
424
+ 'marivo.semantic.search-semantic-objects': string;
425
+ 'marivo.semantic.search-names-references-and-business-definitions': string;
426
+ 'marivo.semantic.objects': string;
427
+ 'marivo.semantic.no-matching-objects-adjust-the-search-or-filters': string;
428
+ 'marivo.semantic.object-details': string;
429
+ 'marivo.semantic.the-selected-object-is-no-longer-in-this-catalog': string;
430
+ 'marivo.semantic.select-an-object-to-view-its-business-definition-and': string;
431
+ 'marivo.semantic.not-in-this-catalog': string;
432
+ 'marivo.semantic.dimension': string;
433
+ 'marivo.semantic.measure': string;
434
+ 'marivo.semantic.time-dimension': string;
435
+ 'marivo.semantic.relationship': string;
436
+ 'marivo.semantic.event': string;
437
+ 'marivo.semantic.state-model': string;
438
+ 'marivo.semantic.temporal-set': string;
439
+ 'marivo.semantic.work-schedule': string;
440
+ 'marivo.semantic.entity': string;
441
+ };
@@ -0,0 +1,19 @@
1
+ import type { ISessions } from '@deepseek-ai/dsh-api-session-controller/client';
2
+ import type { IWorkspaces } from '@deepseek-ai/dsh-api-workspace-controller/client';
3
+ import type { IConversation, InputState } from '@deepseek-ai/dsh-client-ui-conversation/client';
4
+ export interface InputContextHost {
5
+ sessions: Pick<ISessions, 'list' | 'scope'>;
6
+ workspaces: Pick<IWorkspaces, 'list'>;
7
+ conversation: Pick<IConversation, 'input'>;
8
+ }
9
+ export declare function ownedInput(host: InputContextHost, sessionId: string, workspaceId: string): {
10
+ actx: import("@deepseek-ai/dsh-api-session-controller/client").AgentContext;
11
+ input: import("@deepseek-ai/dsh-client-ui-conversation/client").SessionInput;
12
+ workspace: import("@deepseek-ai/dsh-api-workspace-controller/types").WorkspaceView;
13
+ };
14
+ /** Host detect coordinates count each atomic reference as one character. */
15
+ export declare function inputEnd({ draft, draftRev, occurrences, }: Pick<InputState, 'draft' | 'draftRev' | 'occurrences'>): {
16
+ start: number;
17
+ end: number;
18
+ draftRev: number;
19
+ };
@@ -1,9 +1,5 @@
1
- import type { ISessions, IWorkspaces } from '@deepseek-ai/dsh-client-runtime/client';
2
- import type { IConversation } from '@deepseek-ai/dsh-client-ui-conversation/client';
3
- export interface AskDshHost {
4
- sessions: Pick<ISessions, 'list' | 'scope'>;
5
- workspaces: Pick<IWorkspaces, 'list'>;
6
- conversation: Pick<IConversation, 'input'>;
7
- }
1
+ import { type InputContextHost } from '../input-context.ts';
2
+ import type { PresentationContext } from './context-reference.ts';
3
+ export type AskDshHost = InputContextHost;
8
4
  /** Append through the Host's public draft path; never submit or serialize references. */
9
- export declare function appendPresentationContext(host: AskDshHost, sessionId: string, workspaceId: string, context: string): void;
5
+ export declare function appendPresentationContext(host: AskDshHost, sessionId: string, workspaceId: string, context: PresentationContext): void;
@@ -0,0 +1,24 @@
1
+ import { type ReportCatalog } from '../../presentation/contracts/catalog.ts';
2
+ import { type PresentationRpc } from './delivery-model.ts';
3
+ export interface CatalogState {
4
+ open: boolean;
5
+ workspaceId: string;
6
+ query: string;
7
+ loading: boolean;
8
+ catalog?: ReportCatalog;
9
+ error?: string;
10
+ }
11
+ export declare class ReportCatalogModel {
12
+ #private;
13
+ readonly rpc: PresentationRpc;
14
+ constructor(rpc: PresentationRpc);
15
+ getSnapshot: () => CatalogState;
16
+ subscribe: (listener: () => void) => () => void;
17
+ patch(change: Partial<CatalogState>): void;
18
+ show(workspaceId: string): void;
19
+ close(): void;
20
+ reset(): void;
21
+ refresh(): Promise<void>;
22
+ dispose(): void;
23
+ }
24
+ export declare function visibleReports(state: CatalogState): import("../../presentation/contracts/catalog.ts").ReportVersion[];
@@ -0,0 +1,20 @@
1
+ export declare function publicationTime(value: string | null, locale: string): string;
2
+ export declare function ReportSource({ version, sessions, onOpenSession, showKind }: {
3
+ version: any;
4
+ sessions: any;
5
+ onOpenSession: any;
6
+ showKind?: boolean | undefined;
7
+ }): import("react").JSX.Element;
8
+ export declare function ReportCatalogView({ model, reader, sessions, onOpenSession }: {
9
+ model: any;
10
+ reader: any;
11
+ sessions: any;
12
+ onOpenSession: any;
13
+ }): import("react").JSX.Element;
14
+ export declare function ReportHistoryPanel({ state, model, sessions, onOpenSession }: {
15
+ state: any;
16
+ model: any;
17
+ sessions: any;
18
+ onOpenSession: any;
19
+ }): import("react").JSX.Element;
20
+ export declare const catalogStyles = "\n.pd-catalog{padding:20px}.pd-catalog-controls{display:flex}.pd-catalog input,.pd-catalog button,.pd-history button{font:inherit;color:inherit}.pd-catalog input{width:100%;min-width:0;padding:9px 12px;border:1px solid var(--dsw-alias-border-l2,#dce5e5);border-radius:6px;background:var(--dsw-alias-bg-base,#fff)}\n.pd-catalog button,.pd-history button{cursor:pointer;background:var(--dsw-alias-bg-base,#fff);border:1px solid var(--dsw-alias-border-l2,#dce5e5);padding:6px 10px;border-radius:6px}.pd-report-scroll{overflow-x:auto;margin-top:16px}.pd-report-table{width:100%;min-width:540px;table-layout:fixed;border-collapse:collapse;font-size:13px}.pd-report-table th{text-align:left;font-weight:500;color:var(--dsw-alias-label-secondary,#5b7076)}.pd-report-table th,.pd-report-table td{padding:14px 10px;vertical-align:middle;border-bottom:1px solid var(--dsw-alias-border-l2,#dce5e5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-report-table th:first-child{width:48%}.pd-report-table th:last-child{width:180px}.pd-report-table .pd-link,.pd-report-table .pd-source{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-link{border:0!important;background:transparent!important;padding:0!important;color:var(--dsw-alias-state-business-primary,#087c71)!important;text-align:left;cursor:pointer;font:inherit;text-decoration:underline;text-underline-offset:3px}.pd-report-title{font-size:14px!important;font-weight:500}.pd-source{font-size:12px;overflow-wrap:anywhere}.pd-empty{padding:64px 0;text-align:center}.pd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}\n.pd-history{position:sticky;top:70px;flex:0 0 270px;box-sizing:border-box;padding:16px;border-right:1px solid var(--dsw-alias-border-l2,#dce5e5);max-height:75vh;overflow:auto}.pd-history h3{margin:0 0 16px;font-size:15px}.pd-history ol{list-style:none;padding:0;margin:0}.pd-history li{margin-bottom:20px}.pd-version{display:grid;gap:7px;width:100%;text-align:left;margin-bottom:7px}.pd-version span{font-size:12px;overflow-wrap:anywhere}.pd-version[aria-pressed=true]{border-color:var(--dsw-alias-state-business-primary,#087c71);background:var(--dsw-alias-bg-module-platform,#f4f7f7)}.pd-history button:disabled{opacity:.5;cursor:default}.pd-catalog button:focus-visible,.pd-history button:focus-visible,.pd-link:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary,#087c71);outline-offset:3px}\n@media(max-width:850px){.pd-history{position:static;flex:auto;width:100%;max-height:260px;border-right:0;border-bottom:1px solid var(--dsw-alias-border-l2,#dce5e5)}.pd-catalog{padding:12px}}\n";
@@ -1,6 +1,6 @@
1
- import type { DocumentDataset } from '../../presentation/contracts/types.ts';
1
+ import type { DocumentDataset, PresentationLocale } from '../../presentation/contracts/types.ts';
2
2
  import { type ChartBlock } from './model.ts';
3
- export declare function exactChartDescription(dataset: DocumentDataset, block: ChartBlock, rowIndex: number, visible?: ReadonlySet<string>): {
3
+ export declare function exactChartDescription(locale: PresentationLocale, dataset: DocumentDataset, block: ChartBlock, rowIndex: number, visible?: ReadonlySet<string>): {
4
4
  id: string;
5
5
  label: string;
6
6
  value: string;
@@ -0,0 +1,12 @@
1
+ import type { PresentationBlock, PresentationDocument } from '../../presentation/contracts/types.ts';
2
+ import { type ChartExploration } from './chart-view.ts';
3
+ import type { TableSort } from './export-view.ts';
4
+ export declare const PRESENTATION_CONTEXT_BYTES: number;
5
+ export interface PresentationContext {
6
+ label: string;
7
+ context: string;
8
+ }
9
+ /** Display only; the context retains the exact Cell ID, even for duplicate labels. */
10
+ export declare function presentationCellLabel(block: PresentationBlock): string;
11
+ export declare function wrapPresentationContext(context: string, separator?: string): string;
12
+ export declare function followUpContext(document: PresentationDocument, block: PresentationBlock, exploration?: ChartExploration, selection?: Record<string, string>, tableSort?: TableSort): string;
@@ -1,5 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
- export declare function CopyContext({ text, children, }: {
3
- text: string;
2
+ export declare function CopyContext({ getText, children, }: {
3
+ getText: () => string;
4
4
  children: (copy: (restoreFocusTo: HTMLElement) => void) => ReactNode;
5
5
  }): import("react").JSX.Element;
@@ -1,3 +1,5 @@
1
+ export { savePresentationHtml } from './download.ts';
2
+ import { type ReportHistory } from '../../presentation/contracts/catalog.ts';
1
3
  import { type PresentationEdits } from '../../presentation/contracts/editing.ts';
2
4
  import { type PresentationDocument, type PresentationReceipt } from '../../presentation/contracts/index.ts';
3
5
  import { type PresentationDelivery } from '../../presentation/receipt.ts';
@@ -5,8 +7,22 @@ export interface PresentationRpc {
5
7
  call(channel: string, endpoint: string, payload: unknown, signal: AbortSignal): Promise<unknown>;
6
8
  }
7
9
  export type PresentationAsset = 'presentation.json' | 'index.html';
10
+ export interface WorkspaceReportTarget {
11
+ workspaceId: string;
12
+ reportId: string;
13
+ }
8
14
  export interface PresentationDeliveryState {
9
- readonly receipts: Readonly<Record<string, PresentationReceipt>>;
15
+ readonly publishingConfigId?: string;
16
+ readonly publishingName?: string;
17
+ readonly publishingUnavailable?: boolean;
18
+ readonly publishingLoading?: boolean;
19
+ readonly publicationUrl?: string;
20
+ readonly reportTarget?: WorkspaceReportTarget;
21
+ readonly history?: ReportHistory;
22
+ readonly historyOpen?: boolean;
23
+ readonly historyLoading?: boolean;
24
+ readonly historyError?: string;
25
+ readonly historical?: boolean;
10
26
  readonly resolvedReceipt?: PresentationReceipt;
11
27
  readonly editing?: {
12
28
  edits: PresentationEdits;
@@ -25,20 +41,22 @@ export interface PresentationDeliveryState {
25
41
  readonly notice?: string;
26
42
  }
27
43
  export type SavePresentationHtml = (bytes: Uint8Array, filename: string) => void;
28
- /** Download verified bytes as an attachment; never insert generated HTML in the Host DOM. */
29
- export declare function savePresentationHtml(bytes: Uint8Array, filename: string): void;
30
44
  /** Check the exact receipt-bound bytes before either parsing JSON or downloading HTML. */
31
45
  export declare function verifyPresentationAsset(value: unknown, receipt: PresentationReceipt, asset: PresentationAsset): Promise<Uint8Array>;
32
- export declare const reportKey: (receipt: PresentationReceipt) => string;
46
+ export declare function errorMessage(error: unknown): string;
33
47
  /** Host file actions and editor state; never an Agent or data-source execution path. */
34
48
  export declare class PresentationDeliveryModel {
35
49
  #private;
36
50
  constructor(rpc: PresentationRpc, save?: SavePresentationHtml);
37
51
  getSnapshot: () => PresentationDeliveryState;
38
52
  subscribe: (listener: () => void) => () => void;
39
- preview(delivery: PresentationDelivery, sessionId: string, workspaceId: string): Promise<void>;
40
53
  show(delivery: PresentationDelivery, sessionId: string, workspaceId: string): Promise<void>;
54
+ showReport(workspaceId: string, reportId: string): Promise<void>;
55
+ /** Open a fixed published Build without first displaying the current pointer. */
56
+ showBuild(workspaceId: string, reportId: string, buildId: string): Promise<void>;
41
57
  get dirty(): boolean;
58
+ /** Recheck the current pointer without replacing the displayed document or its view state. */
59
+ beginCurrentEdit(validate?: () => void): Promise<void>;
42
60
  beginEdit(): void;
43
61
  changeEdits(edits: PresentationEdits): void;
44
62
  undoEdit(): void;
@@ -46,7 +64,10 @@ export declare class PresentationDeliveryModel {
46
64
  cancelEdit(): void;
47
65
  saveEdit(): Promise<void>;
48
66
  download(delivery: PresentationDelivery, sessionId: string, workspaceId: string, displayed?: boolean): Promise<void>;
49
- contextChanged(sessionId: string, workspaceId: string): void;
67
+ publishDisplayed(viewBytes?: Uint8Array): Promise<void>;
68
+ downloadDisplayed(): Promise<void>;
69
+ toggleHistory(refresh?: boolean): Promise<void>;
70
+ selectVersion(buildId?: string): Promise<void>;
50
71
  unavailable(message?: string): void;
51
72
  close(): void;
52
73
  resetConnection(): void;