模型层 core

@xihan-report/core 是纯 TypeScript 的模型层:报表定义的类型、校验、取数请求、计算、编辑操作与扩展的合并,不依赖 DOM,浏览器、Node.js 与其它 JavaScript 运行环境里都能用。报表定义的字段见报表定义类型,属性见属性。下表按源码模块列出全部导出。

全部导出

binding-plans

名称 种类 说明
FillBindingsOptions 接口 补全绑定的选项。
planFillBindings 函数 补全一张卡片的必填绑定:取数形状为 query 的卡片交给它种类的 fillBindings,拿到查询里现有的维度与度量 id。

card-data

名称 种类 说明
bodyQuery 函数 扩展视图作主体时的查询:取数形状为 query 的扩展视图;别的主体为 undefined。
cardDataset 函数 卡片取数的数据集 id;不取数的卡片为 undefined。
cardQuery 函数 卡片的查询:图表与指标卡片,或取数形状为 query 的扩展卡片;别的卡片为 undefined。
cardView 函数 卡片带的视图:表格卡片,或取数形状为 view 的扩展卡片;别的卡片为 undefined。
isDataView 函数 主体是不是明细表、分组报表或交叉表。
QueryBinding 接口 带查询的取数部分:数据集、参数绑定与聚合查询。

card-templates

名称 种类 说明
cardTemplate 函数 新卡片的模板:取数用 dataset,查询、图表与视图里的字段绑定都留空(空字符串或空列表),由设计器随后填上。
CardTemplate 类型 内置种类的新卡片模板。
cardTypeOf 函数 卡片的种类:内置的按图表或视图类型细分,扩展卡片就是它的种类名。
REPORT_CARD_TYPES 常量 全部卡片种类:图表、指标、表格依次排列。
ReportCardType 类型 卡片种类:chart.<图表类型>、metric、table.<视图类型>。

data-plans

名称 种类 说明
DataCascade 接口 删除时一并删掉的别处:列表项、筛选条件、明细排序、联动目标(目标删空时连同联动)与参数绑定。
DataRemoval 接口 删除计划:操作合为一步撤销,cascade 是一并删掉的别处的数目。
datasetUsage 函数 使用这个数据集的卡片与视图的数目。
planRemoveDataset 函数 删除数据集;还有卡片或视图使用它时抛 RangeError,数据集不存在时也抛 RangeError。
planRemoveField 函数 删除字段:取这个字段的列表项走 planRemoveItem 一并删掉(连带它们的引用),绑定这个数据集的对象里以它为字段的筛选条件、明细排序与联动目标也删掉(目标删空的联动整条删掉),最后 removeField。
planRemoveParameter 函数 删除报表参数:以它为操作数的筛选条件与引用它的参数绑定一并删掉,最后 removeParameter。
planRenameParameter 函数 报表参数改名:updateParameter,并把引用它的地方一起改掉——筛选条件的操作数、参数绑定,以及计算字段、公式度量与列汇总公式里的 $名字。

engine/aggregate

名称 种类 说明
createRollupAccumulator 函数 已聚合值的再汇总累加器:sum 与 count 相加,min / max 取最值,规则同 createAccumulator。
isAdditive 函数 聚合方式能否由已聚合值再汇总得到。
NEEDS_ROLLUP 常量 已聚合值无法再汇总、需要使用方另给汇总值的标记。

engine/chart-data

名称 种类 说明
CartesianChartData 接口 直角坐标图的数据:rows 是所有系列共用的数据行。
CartesianSeriesData 接口 直角坐标图的一条系列。
chartData 函数 把查询结果整成图表的数据。
ChartData 类型 交给图表渲染的数据,形状随图表类型。
DateHeatmapData 接口 日期热力图的数据:每天一格,日期写 YYYY-MM-DD。
HierarchyChartData 接口 层级图的数据:扁平的节点表,次序是父在子前。
HierarchyNodeData 接口 层级图的一个节点:根节点的 parent 为 null,叶子带数值。
MatrixHeatmapData 接口 矩阵热力图的数据:行与列按首次出现的次序。
RowsChartData 接口 饼图、漏斗图、雷达图的数据:查询行原样使用,字段按规格取。
SankeyChartData 接口 桑基图的数据:节点按首次出现的次序,同值的源与目标是同一个节点。

engine/compute

名称 种类 说明
CardResult 接口 一张卡片的计算结果:value 的形状由种类定,内置的图表是 ChartData、指标是 MetricValue、表格是 ViewResult。
computeCard 函数 按种类计算一张卡片:先按取数形状跑查询或视图,再交给种类的 compute。
computeExtensionView 函数 按种类计算作主体的扩展视图,规则同 computeCard。
computeView 函数 按视图类型计算明细表、分组报表或交叉表。
ExtensionViewResult 接口 作主体的扩展视图的计算结果:value 的形状由种类定。
ViewResult 类型 一个数据视图的计算结果。

engine/context

名称 种类 说明
ComputeEnvironment 接口 一次计算的环境。
ComputeOptions 接口 计算选项。

engine/crosstab

名称 种类 说明
buildCrosstab 函数 计算交叉表:行维度与列维度交叉,每格写各度量的聚合值。
CrosstabHeader 接口 交叉表一条轴上的一项。
CrosstabResult 接口 交叉表的计算结果。

engine/crosstab-axis

名称 种类 说明
crosstabAxes 函数 交叉表两条轴的表头结构。
CrosstabAxes 接口 交叉表两条轴的表头结构。
CrosstabAxis 接口 一条轴的表头结构。
CrosstabAxisNode 接口 表头树的一个节点:一个标签占一格或合并的一片。
CrosstabLabel 类型 表头上的一个标签;id 相同的相邻标签合成一格。
CrosstabLeaf 接口 轴上的一个叶子:交叉表的一行或一列。

engine/cube

名称 种类 说明
isAggregateMeasure 函数 度量是否为聚合度量。

engine/dashboard

名称 种类 说明
cardDimension 函数 卡片上的一个维度:图表与指标卡片是查询的维度,表格卡片按视图类型是明细表的列、分组报表的分组、交叉表的行列维度。
CardDimension 接口 卡片上一个可发出取值的维度。
computeMetric 函数 指标卡片的取值:从查询总计里取 value 与 baseline,比出涨跌与变化率。
findCard 函数 按 id 找卡片。
LinkSelections 类型 联动的选中值:联动 id 到源维度上选中的取值;空数组或缺项表示没有选中。
MetricResult 接口 指标卡片的取值。
resolveLinkFilters 函数 把联动的选中值换成各目标卡片的筛选条件:每个目标得到 field in 选中值,源维度带日期粒度时条件带同一粒度。

engine/date

名称 种类 说明
createDateTools 函数 建一组绑定时区的日期工具。
DateTools 接口 绑定了时区的日期工具。

engine/errors

名称 种类 说明
ComputeErrorCode 类型 计算错误码。
ReportComputeError 类 计算错误:message 即错误码,定位与取值放在 params 里。

engine/filter

名称 种类 说明
compileFilter 函数 把筛选编译成行谓词。
FilterEnvironment 接口 编译筛选需要的环境。
isEmptyOperand 函数 操作数为空:缺失值,或去掉缺失元素后为空的数组。
isFilterGroup 函数 判断一个节点是否为子组。
resolveOperand 函数 操作数的值:参数引用取参数值,未给值的参数为 undefined。
RowPredicate 类型 行谓词。

engine/formula

名称 种类 说明
applyCalculatedFields 函数 给每行算出计算字段,返回新的行数组;数据集没有计算字段时原样返回。

engine/parameters

名称 种类 说明
PARAMETER_ISSUE_CODES 常量 参数取值的问题码。
ParameterIssueCode 类型 参数取值的问题码。
ResolvedParameters 接口 解析后的参数取值。
resolveParameters 函数 解析报表参数的取值:输入里没有的参数取缺省值,输入写 null 表示不给值。

engine/query

名称 种类 说明
QueryResult 接口 查询结果。
runQuery 函数 执行聚合查询。

engine/request

名称 种类 说明
createDatasetRequest 函数 生成取数请求。
findDataset 函数 按 id 找数据集。
RequestOptions 接口 生成取数请求的选项。
RequestSource 类型 取数的来源:明细表、分组报表、交叉表,或带查询的卡片与扩展视图。

engine/sort

名称 种类 说明
sortRows 函数 按明细排序规则排序行,返回新数组。

engine/table

名称 种类 说明
buildGroupReport 函数 计算分组报表:逐级分组,每组算出带汇总的列的小计。
buildTable 函数 计算明细表:算出计算字段、筛选、排序、汇总,再截取。
GroupNode 接口 分组报表里的一个组。
GroupReportResult 接口 分组报表的计算结果。
TableResult 接口 明细表的计算结果。

expression

名称 种类 说明
CompiledExpression 类型 转导出自 @xihan-ui/expression
EngineCompileOptions 类型 转导出自 @xihan-ui/expression
EngineCompileResult 类型 转导出自 @xihan-ui/expression
EngineEvaluation 类型 转导出自 @xihan-ui/expression
ExpressionEngine 类型 转导出自 @xihan-ui/expression
ExpressionIssue 类型 转导出自 @xihan-ui/expression

extensions

名称 种类 说明
createReportModel 函数 合出报表模型:内置扩展 REPORT_CORE_EXTENSION 在前,extensions 按顺序在后。
MetricValue 接口 指标卡片的计算结果。
REPORT_CORE_EXTENSION 常量 内置的卡片、主体视图与编辑方式。
REPORT_CORE_EXTENSION_ID 常量 内置扩展的 id。
REPORT_EXTENSION_SPACES 常量 报表各层扩展共用的名字空间:卡片种类、视图种类、追加属性与文档级属性的路径。
ReportCardData 类型 卡片种类的取数形状:query 同图表与指标卡片(卡片上有 dataset、parameters 与 query),view 同表格卡片(带一个明细表、分组报表或交叉表),none 不取数。
ReportCardKind 接口 一种卡片。
ReportCoreExtension 接口 报表 core 层的扩展。
ReportKindCheck 接口 种类校验拿到的上下文:公共字段与取数部分 core 已经查过。
ReportKindEntry 接口 合并后的一个种类:定义、登记它的扩展 id,以及是不是内置的。
ReportKindInput 接口 交给种类计算的取数结果:query 形状是查询结果,view 形状是视图结果,none 两者都没有。
ReportModel 接口 一组扩展合出的报表模型。
ReportPropertyTarget 类型 属性追加到哪一类对象上:document 之外的键同属性面板的分区——dashboard、card:<种类>、chart:<图表类型>、series、metric、view:<视图类型>、column、group-level、dimension、measure、field、parameter、link。
ReportQueryIds 接口 卡片查询里现有的维度与度量 id,按查询里的先后。
ReportRuleContext 接口 规则拿到的上下文:合并后的报表模型。
ReportViewData 类型 主体视图种类的取数形状:扩展视图只能是 query 或 none;table、group、crosstab、dashboard 是内置四种自己的形状。
ReportViewKind 接口 一种主体视图。

grid

名称 种类 说明
CardPlacement 接口 新增卡片的位置:写了 x、y 时放在那里并推开压到的卡片,没写时放到第一个放得下的空位。
gridItems 函数 看板上全部卡片的网格位置,次序与卡片相同。
layoutOperations 函数 把布局的变化写成一条 layoutCards:before 里有、位置大小变了的卡片;没有变化时为空数组。
NewCard 类型 待新增的卡片:layout 只需写大小,位置可以留给 planAddCard 找空位。
NewExtensionCard 接口 待新增的扩展卡片:同 ExtensionCard,layout 只需写大小。
planAddCard 函数 新增卡片:按 placement 放进网格(推开压到的卡片,缺省整体压实),产出 addCard 与其余卡片的 layoutCards。
planCardLayout 函数 拖动或改大小:把卡片放到 target(只改写了的项),压到的卡片向下推开,向下拖过下方卡片时两者对调,之后缺省整体压实。
planCompactLayout 函数 压实布局:每张卡片向上移到碰到别的卡片为止,原本重叠的向下推开;没有变化时为空数组。
planRemoveCard 函数 删除卡片并清理联动:以它为源的联动整条删除,指向它的目标从联动里去掉,目标删空的联动也删除;之后缺省整体压实。

item-plans

名称 种类 说明
planAddFieldItem 函数 从数据集字段生成一个列表项并加进列表:维度(查询的 dimensions、交叉表的 rows / columns、分组报表的 groups)取这个字段,日期字段缺省按月分桶;度量里数值字段缺省 sum,其余缺省 count;明细表与分组报表的列只取字段。
planRemoveItem 函数 删除列表项,并清理对它的引用:以这张卡片为源、在它上面发出取值的联动删除;引用它的直角坐标系列删除,雷达指标与层级从数组里去掉,可选的引用(splitBy、气泡大小与颜色、指标基准值)删掉属性,引用它的迷你图删掉;查询排序的规则与各处的 sort.by 去掉,标注里指向被删系列的去掉。
planRenameField 函数 字段改名:updateField,并把绑定这个数据集的视图与查询里引用它的地方一起改掉——列、分组、维度与度量的 field,筛选条件与明细排序的 field、目标卡片绑定这个数据集的联动目标的 field,以及同一数据集里计算字段公式对它的引用。
planRenameItem 函数 列表项改 id:updateItem,并把别处对它的引用一起改掉——图表与指标配置里引用它的字段、查询排序的 key 与维度排序的 by、分组的 sort.by(列)、交叉表维度的 sort.by(度量)、直角坐标图标注的 series,以及以这张卡片为源、在它上面发出取值的联动。

operations/apply

名称 种类 说明
applyOperation 函数 以纯函数方式执行编辑操作:不修改传入的文档,返回新文档与逆操作数组;没有改到的部分沿用原引用。
applyOperations 函数 按顺序执行一组编辑操作,整体成功或整体失败(@xihan-ui/designer-kit 的 applyInSequence);逆操作为各操作逆操作按相反顺序的拼接。

operations/describe

名称 种类 说明
describeReportStep 函数 撤销栈里一步的说明素材:按第一个操作定动作与对象种类,同一步里同动作、同种类的操作合起来计个数;只改了一个对象时带上它的名字(标题,没有时取 id 或字段名)。
ReportStep 接口 一步的说明素材。
ReportStepAction 类型 一步里的动作。
ReportStepKind 类型 一步改的对象种类,与设计器文案 objectKinds 的键同一组。

operations/errors

名称 种类 说明
ReportOperationError 类 操作无法应用时抛出的错误:message 即错误码,输入文档保持不变。
ReportOperationErrorCode 类型 操作失败的原因:

operations/path

名称 种类 说明
itemKey 函数 数组项的键:id,没有 id 时取 name;都不是字符串时为 undefined。
readPath 函数 读取路径处的值;路径不存在时为 undefined,路径段不合法(负数、小数、原型键)时抛 JsonPathError。

operations/types

名称 种类 说明
AddCardOperation 接口 新增卡片,index 缺省放在末尾;位置大小写在卡片的 layout 里。
AddDatasetOperation 接口 新增数据集,index 缺省放在末尾。
AddFieldOperation 接口 在数据集里新增字段,index 缺省放在末尾。
AddItemOperation 接口 在列表里新增一项,index 缺省放在末尾。
AddLinkOperation 接口 新增联动,index 缺省放在末尾。
AddParameterOperation 接口 新增报表参数,index 缺省放在末尾。
ItemList 类型 视图或查询里的列表:明细表的 columns;分组报表的 groups、columns;交叉表的 rows、columns、measures;图表与指标卡片查询的 dimensions、measures;直角坐标图的 series。
ItemOwner 接口 列表项的所在:card 缺省时是报表主体的视图;表格卡片是它的视图,图表与指标卡片是它的查询,series 是直角坐标图的配置。
LayoutCardsOperation 接口 一次改多张卡片的位置大小。
MoveDatasetOperation 接口 把数据集移到 index。
MoveFieldOperation 接口 把数据集里的字段移到 index。
MoveItemOperation 接口 把列表项移到 index;写了 to 时移到同一视图的另一个列表,如交叉表的行维度换到列维度。
MoveParameterOperation 接口 把报表参数移到 index。
PropertyChange 接口 一处属性修改:path 相对被修改的对象,写法同 ReportPath;value 不写表示删除该属性。
RemoveCardOperation 接口 删除卡片;引用它的联动不随之改动,用 planRemoveCard 一并清理。
RemoveDatasetOperation 接口 删除数据集;用着它的卡片、视图与联动不一并改,要连带删除时用 planRemoveDataset。
RemoveFieldOperation 接口 删除数据集里的字段;引用它的地方不一并改,要连带删除时用 planRemoveField。
RemoveItemOperation 接口 删除报表主体或卡片里某个列表的一项。
RemoveLinkOperation 接口 删除看板的联动。
RemoveParameterOperation 接口 删除报表参数;引用它的地方不一并改,要连带删除时用 planRemoveParameter。
ReplaceDocumentOperation 接口 整份换掉报表定义,如编辑整份 JSON 之后应用。
ReportOperation 类型 编辑操作。
ReportOperationResult 类型 操作结果,即 @xihan-ui/designer-kit 的 OperationResult:新文档,以及按顺序作用于新文档即可还原出传入文档的逆操作。
ReportOperationType 类型 编辑操作的种类。
ReportPath 类型 报表里的路径:字符串段是对象的属性名,或数组里带 id(没有 id 时取 name)的那一项;数字段是数组下标。
SetBodyOperation 接口 换掉报表主体,用来改报表的类型。
UpdateCardOperation 接口 修改卡片;不能修改 id、kind 与 layout(位置大小用 layoutCards)。
UpdateDashboardOperation 接口 修改看板本身(网格);不能修改 type、cards 与 links。
UpdateDatasetOperation 接口 修改数据集;不能修改 id 与 fields(字段用字段的操作)。
UpdateDocumentOperation 接口 修改文档本身的属性;不能修改 schemaVersion、datasets、parameters 与 body。
UpdateFieldOperation 接口 修改字段;可以改 name,同一数据集里不能重名。
UpdateItemOperation 接口 修改列表项;可以改 id,同一列表里不能重复。
UpdateLinkOperation 接口 修改联动;不能修改 id。
UpdateParameterOperation 接口 修改报表参数;可以改 name,不能与别的参数重名。
UpdateViewOperation 接口 修改视图:card 缺省时是报表主体(须是明细表、分组报表或交叉表),否则是那张表格卡片的视图;不能修改 type。

properties

名称 种类 说明
builtinProperties 函数 某类对象的内置属性;扩展追加的属性不能与它们同路径。
cardProperties 函数 卡片自身的属性:标题、说明;带查询的卡片(图表、指标,或取数形状为 query 的扩展卡片)还有数据集、参数绑定与查询的筛选、行数上限。
chartProperties 函数 图表配置的属性,路径相对图表配置;直角坐标图的系列另用 seriesProperties。
dashboardProperties 函数 看板本身的属性:网格的列数与行高(px)。
datasetFieldProperties 函数 数据集一个字段的属性,路径相对字段。
dimensionProperties 函数 查询或交叉表一个维度的属性,路径相对维度。
documentProperties 函数 报表文档的属性:标题与说明。
extensionViewProperties 函数 作主体的扩展视图的属性:取数形状为 query 时是取数属性,none 时没有。
groupLevelProperties 函数 分组报表一级分组的属性,路径相对分组。
linkProperties 函数 看板联动的属性,路径相对联动。
measureProperties 函数 一个度量的属性,路径相对度量:写了 formula 的是公式度量,否则是聚合度量。
metricProperties 函数 指标卡片配置的属性,路径相对指标配置;迷你图的属性只在写了迷你图时显示。
parameterProperties 函数 报表参数的属性,路径相对参数。
REPORT_PROPERTY_GROUPS 常量 属性分组的先后。
ReportPropertyControl 类型 报表的编辑方式:designer-kit 的内建方式,加上报表自己的几种。
ReportPropertyDescriptor 类型 报表的属性描述。
ReportPropertyGroup 类型 属性分组。
seriesProperties 函数 直角坐标图一个系列的属性,路径相对系列;各标记的专有属性只在该标记下显示。
tableColumnProperties 函数 明细表与分组报表一列的属性,路径相对列;汇总写聚合或公式之一。
viewProperties 函数 视图的属性,路径相对视图(报表主体或表格卡片的 view);列表里的项另用各自的描述。

schema/chart

名称 种类 说明
CartesianAnnotationSpec 类型 注释;axis 的 x 是自变量轴,y 是数值轴。
CartesianAxisSpec 接口 坐标轴;时间值写 ISO 8601 字符串。
CartesianBarSeriesSpec 接口 柱系列。
CartesianChartSpec 接口 笛卡尔图:柱、折线、面积、散点。
CartesianLineSeriesSpec 接口 折线系列。
CartesianScatterSeriesSpec 接口 散点系列:每个维度组合一个点。
CartesianSeriesSpec 类型 柱线图的一条系列:柱、折线或散点。
CartesianSeriesSpecBase 接口 笛卡尔图系列的共有属性。
CHART_TYPES 常量 全部图表类型。
ChartPalette 类型 顺序色阶的色板,与 XiHan.UI 的 ChartPalette 一致。
ChartSize 类型 尺寸档。
ChartSpec 类型 图表配置,按 type 分。
ChartSymbol 类型 散点形状:XiHan.UI 图表引擎的 SymbolName。
ChartTone 类型 语气:XiHan.UI 的 Tone。
FunnelChartSpec 接口 漏斗图:每个维度成员一个阶段。
HeatmapChartSpec 类型 热力图:日历(含按月)或矩阵。
HeatmapChartSpecBase 接口 热力图共有的属性。
HeatmapDateChartSpec 接口 日期热力图:calendar 连续周列,month 按自然月分块。
HeatmapMatrixChartSpec 接口 矩阵热力图:行列各是一个维度。
HierarchyChartSpec 接口 层级图:维度依次是由上到下的层。
MetricSpec 接口 指标卡片:一个汇总值,可带对比与走势。
PieChartSpec 接口 饼图:每个维度成员一个扇区。
RadarChartSpec 接口 雷达图:每个维度成员一个实体,每个指标一根轴。
RadarIndicatorSpec 接口 雷达图的一个指标。
SankeyChartSpec 接口 桑基图:每个维度组合一条流带。
SparklineSpec 接口 迷你图:指标卡片里的走势。

schema/dataset

名称 种类 说明
DatasetAggregated 接口 已聚合数据:使用方按请求里的 query 在后端聚合并筛选过。
DatasetData 类型 使用方交回的数据。
DatasetField 接口 数据集里的一个字段。
DatasetParameter 接口 数据集接受的一个参数:取数时由使用方的数据源解释。
DatasetQuery 接口 视图需要的聚合:使用方可以照此在后端聚合,返回 aggregated 数据。
DatasetQueryDimension 接口 取数请求里的一个维度:按 field 分组,写了 bucket 时按日期粒度取键。
DatasetQueryMeasure 接口 取数请求里的一个度量:对 field 做 aggregate;count 不写 field 时数行。
DatasetRequest 接口 取数请求:core 按视图与参数取值算出,使用方据此取数。
DatasetRollup 接口 一条汇总行:按 dimensions 分组的汇总值,键同已聚合行。
DatasetRows 接口 明细行:core 负责计算字段、筛选、分组与聚合。
DatasetSchema 接口 报表引用的一个数据集。

schema/document

名称 种类 说明
ParameterOption 接口 参数的一个候选项。
REPORT_SCHEMA_VERSION 常量 当前的 schema 版本。
ReportDocument 接口 报表文档:纯 JSON。
ReportParameter 接口 报表参数:报表使用者填写,经绑定传给数据集参数或筛选条件。

schema/extension

名称 种类 说明
ReportExtensible 接口 能带扩展数据的对象:文档、数据集、字段、参数、视图、卡片、各列表项与联动。
ReportExtensionData 类型 对象上各扩展自己的数据:键是扩展 id,值归那个扩展;校验只查它与每一块都是对象,里面不看。
ReportExtensionKind 类型 扩展登记的卡片与视图种类名:扩展 id 的末段、一个点、名字,如 gantt.timeline。

schema/filter

名称 种类 说明
FILTER_OPERATORS 常量 转导出自 @xihan-ui/viz
FilterCondition 接口 一个筛选条件。
FilterGroup 接口 条件组:and 全部满足,or 任一满足。
FilterNode 类型 条件组里的一项:条件或子组。
FilterOperator 类型 转导出自 @xihan-ui/viz
FilterSubgroup 接口 嵌套在条件组里的子组。
NullsPosition 类型 转导出自 @xihan-ui/viz
Operand 类型 操作数:字面值、字面值数组,或报表参数。
ParameterRef 接口 引用一个报表参数的值。
RowSortRule 接口 明细行的一条排序规则。
SortDirection 类型 转导出自 @xihan-ui/viz

schema/format

名称 种类 说明
DateFormatSpec 类型 转导出自 @xihan-ui/expression
FormatRounding 类型 转导出自 @xihan-ui/expression
FormatSpec 类型 转导出自 @xihan-ui/expression
NumberFormatSpec 类型 转导出自 @xihan-ui/expression
NumericFormatSpec 类型 图表数值用的格式说明:数字或百分比。
PercentFormatSpec 类型 转导出自 @xihan-ui/expression
RmbUpperFormatSpec 类型 转导出自 @xihan-ui/expression

schema/options

名称 种类 说明
ANNOTATION_AXES 常量 取值:x、y。
ANNOTATION_KINDS 常量 取值:line、band、point、average、trend。
ANNOTATION_POINTS 常量 取值:max、min、last。
AXIS_FITS 常量 取值:all、window。
AXIS_LABEL_OVERFLOWS 常量 取值:auto、rotate、truncate、wrap。
AXIS_SCALES 常量 取值:band、point、linear、log、sqrt、pow、symlog、time、utc。
BAR_LABELS 常量 取值:none、inside、end。
BAR_SHAPES 常量 取值:bar、lollipop。
BAR_STACK_OFFSETS 常量 取值:none、expand、diverging。
CARD_KINDS 常量 取值:chart、metric、table。
CARTESIAN_ORIENTATIONS 常量 取值:vertical、horizontal。
CHART_INTERACTION_AXES 常量 缩放与刷选的方向。
CHART_PALETTES 常量 取值:red、orange、amber、yellow、lime、green、teal、cyan、blue、indigo、purple、pink、gray。
CHART_RENDERERS 常量 取值:svg、canvas、auto。
CHART_SIZES 常量 取值:sm、md、lg。
CHART_TONES 常量 取值:brand、neutral、success、warning、danger、info。
CHART_TRIGGERS 常量 取值:axis、item。
COLUMN_ALIGNS 常量 取值:start、center、end。
COLUMN_STICKY_SIDES 常量 取值:start、end。
FILTER_LOGICS 常量 取值:and、or。
FUNNEL_ALIGNS 常量 取值:center、start。
FUNNEL_CONVERSIONS 常量 取值:previous、first、none。
FUNNEL_DIRECTIONS 常量 取值:down、up。
FUNNEL_LABELS 常量 取值:inside、outside。
FUNNEL_SHAPES 常量 取值:trapezoid、bar。
HEATMAP_SCALES 常量 取值:sequential、diverging。
HEATMAP_VARIANTS 常量 取值:calendar、month、matrix。
HIERARCHY_COLOR_BY 常量 取值:branch、value、uniform。
HIERARCHY_LAYOUTS 常量 取值:treemap、sunburst、icicle、pack。
HIERARCHY_ORIENTATIONS 常量 取值:vertical、horizontal。
HIERARCHY_TILES 常量 取值:squarify、binary、slice-dice。
LINE_CURVES 常量 取值:linear、monotone、step、step-before、step-after。
LINE_LABELS 常量 取值:none、end。
LINE_STACK_OFFSETS 常量 取值:none、expand、silhouette、wiggle。
LINE_SYMBOLS 常量 取值:auto、always、none。
MEASURES_ON 常量 取值:columns、rows。
NULLS_POSITIONS 常量 取值:first、last。
PIE_LABEL_CONTENTS 常量 取值:name-share、name-value、name、share、value。
PIE_LABELS 常量 取值:none、inside、outside。
PIE_SORTS 常量 取值:none、descending。
PIE_SWEEPS 常量 取值:full、half。
PIE_VARIANTS 常量 取值:pie、donut。
RADAR_CURVES 常量 取值:linear、catmull-rom。
RADAR_SCALES 常量 取值:shared、independent。
RADAR_SHAPES 常量 取值:polygon、circle。
SANKEY_LINK_COLORS 常量 取值:neutral、source、target、gradient。
SANKEY_NODE_ALIGNS 常量 取值:justify、start、end、center。
SANKEY_NODE_SORTS 常量 取值:auto、input。
SANKEY_ORIENTATIONS 常量 取值:horizontal、vertical。
SERIES_MARKS 常量 取值:bar、line、scatter。
SORT_DIRECTIONS 常量 取值:asc、desc。
SPARKLINE_CURVES 常量 取值:linear、monotone。
SPARKLINE_MARKERS 常量 取值:none、last、extremes。
SPARKLINE_VARIANTS 常量 取值:line、area、bar、win-loss。
TOOLTIP_ORDERS 常量 取值:series、descending、ascending。
TREND_METHODS 常量 取值:linear、moving-average。

schema/query

名称 种类 说明
AGGREGATE_KINDS 常量 转导出自 @xihan-ui/viz
AggregateKind 类型 转导出自 @xihan-ui/viz
AggregateMeasure 接口 聚合度量:对字段做聚合;count 不写 field 时数行。
AxisSort 接口 成员的次序:按键,或按某个度量在该成员上的汇总值。
DATE_BUCKETS 常量 全部日期粒度,由粗到细。
DateBucket 类型 日期粒度:把日期取成分组键。
Dimension 接口 维度:按字段分组。
FormulaMeasure 接口 公式度量:在聚合之后,以同一查询其它度量的值与报表参数($名字)为变量求值。
Measure 类型 度量:聚合度量或公式度量。
MeasureBase 接口 共有的度量属性。
QuerySortRule 接口 查询结果行的一条排序规则。
ReportQuery 接口 聚合查询:按维度分组、计算度量,结果每个维度组合一行。

schema/value

名称 种类 说明
DataRow 类型 一行数据:字段名到值。
FIELD_TYPES 常量 全部字段类型,按声明次序。
FieldType 类型 字段类型。
JsonValue 类型 转导出自 @xihan-ui/core/json
ParameterValue 类型 参数的取值:单值,或多选参数的值数组。
ParameterValues 类型 一组参数取值:参数名到值。
ScalarValue 类型 JSON 标量:模板里能写下的单个值。

schema/view

名称 种类 说明
CardBase 接口 卡片的共有属性。
CardLayout 接口 卡片在网格上的位置与大小,单位是格。
ChartCard 接口 图表卡片。
ColumnSummary 类型 汇总:对列的字段做聚合,或以其它列的汇总值与报表参数($名字)为变量求公式。
CrosstabTotals 接口 交叉表一条轴上的汇总。
CrosstabView 接口 交叉表:行维度与列维度交叉,格子里写度量。
DashboardCard 类型 看板上的一张卡片:图表、指标、表格,或扩展登记的种类。
DashboardGrid 接口 看板网格。
DashboardLink 接口 筛选联动:在源卡片上选中的取值,成为目标卡片在对应字段上的 in 条件。
DashboardView 接口 看板:网格上排列的卡片。
DataBinding 接口 视图取数的数据集与参数绑定。
DataView 类型 可以直接取数计算的视图。
ExtensionCard 接口 扩展登记的卡片:kind 是带点的种类名。
ExtensionView 接口 扩展登记的主体视图:type 是带点的种类名。
GroupLevel 接口 分组报表的一级分组。
GroupView 接口 分组报表:多级分组,组内列出明细,组尾写小计,末尾写总计。
LinkTarget 接口 联动的一个目标:在目标卡片上按字段筛选。
MetricCard 接口 指标卡片。
ReportBody 类型 报表的主体。
TableCard 接口 表格卡片:内嵌一个明细表、分组报表或交叉表。
TableColumn 接口 表格的一列。
TableView 接口 明细表:逐行列出数据。

validate/checker

名称 种类 说明
REPORT_ISSUE_CODES 常量 报表自己的校验问题码,按字母序;通用问题码见 @xihan-ui/designer-kit/schema 的 CommonIssueCode。
ValidationIssue 类型 一条校验问题:path 只用对象键与数组下标,target 指出所在的带键对象。
ValidationIssueCode 类型 校验问题码:designer-kit/schema 的通用问题码、报表自己的(REPORT_ISSUE_CODES),以及扩展的问题码(扩展 id 的末段、一个点、码)。

validate/document

名称 种类 说明
validateDocument 函数 校验报表文档,返回全部问题;没有问题时为空数组。
ValidateOptions 接口 校验选项。