@k2b/ui 0.51.0 → 0.52.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.
- package/dist/base.css +3 -0
- package/dist/browser/actions/Toolbar.js +8 -2
- package/dist/browser/actions/Toolbar.js.map +1 -1
- package/dist/browser/charts/core/bar-labels.js +5 -0
- package/dist/browser/charts/core/bar-labels.js.map +1 -0
- package/dist/browser/charts/core/bubble.js +166 -0
- package/dist/browser/charts/core/bubble.js.map +1 -0
- package/dist/browser/charts/core/default-styles.js +83 -0
- package/dist/browser/charts/core/default-styles.js.map +1 -0
- package/dist/browser/charts/core/funnel-layout.js +79 -0
- package/dist/browser/charts/core/funnel-layout.js.map +1 -0
- package/dist/browser/charts/core/funnel.js +27 -0
- package/dist/browser/charts/core/funnel.js.map +1 -0
- package/dist/browser/charts/core/index.js +6 -1
- package/dist/browser/charts/core/index.js.map +1 -1
- package/dist/browser/charts/core/pareto.js +120 -0
- package/dist/browser/charts/core/pareto.js.map +1 -0
- package/dist/browser/charts/core/radar.js +101 -0
- package/dist/browser/charts/core/radar.js.map +1 -0
- package/dist/browser/charts/core/registry.js +11 -1
- package/dist/browser/charts/core/registry.js.map +1 -1
- package/dist/browser/charts/core/render-size.js +3 -1
- package/dist/browser/charts/core/render-size.js.map +1 -1
- package/dist/browser/charts/core/render.js +19 -0
- package/dist/browser/charts/core/render.js.map +1 -1
- package/dist/browser/charts/core/snapshot.js +1 -1
- package/dist/browser/charts/core/snapshot.js.map +1 -1
- package/dist/browser/charts/core/svg-barGauge.js +67 -0
- package/dist/browser/charts/core/svg-barGauge.js.map +1 -0
- package/dist/browser/charts/core/svg-boxplot.js +127 -0
- package/dist/browser/charts/core/svg-boxplot.js.map +1 -0
- package/dist/browser/charts/core/svg-common.js +1065 -0
- package/dist/browser/charts/core/svg-common.js.map +1 -0
- package/dist/browser/charts/core/svg-gauge.js +185 -0
- package/dist/browser/charts/core/svg-gauge.js.map +1 -0
- package/dist/browser/charts/core/svg-heatmap.js +80 -0
- package/dist/browser/charts/core/svg-heatmap.js.map +1 -0
- package/dist/browser/charts/core/svg-histogram.js +73 -0
- package/dist/browser/charts/core/svg-histogram.js.map +1 -0
- package/dist/browser/charts/core/svg-renderers.js +9 -1777
- package/dist/browser/charts/core/svg-renderers.js.map +1 -1
- package/dist/browser/charts/core/svg-scatter.js +114 -0
- package/dist/browser/charts/core/svg-scatter.js.map +1 -0
- package/dist/browser/charts/core/treemap.js +138 -0
- package/dist/browser/charts/core/treemap.js.map +1 -0
- package/dist/browser/charts/description.js.map +1 -1
- package/dist/browser/content/ChartRoot.js +21 -7
- package/dist/browser/content/ChartRoot.js.map +1 -1
- package/dist/browser/content/ChartSnapshotView.js +4 -1
- package/dist/browser/content/ChartSnapshotView.js.map +1 -1
- package/dist/browser/content/DataTable.js +186 -193
- package/dist/browser/content/DataTable.js.map +1 -1
- package/dist/browser/content/Lightbox.js +55 -23
- package/dist/browser/content/Lightbox.js.map +1 -1
- package/dist/browser/content/ThumbnailStrip.js +174 -0
- package/dist/browser/content/ThumbnailStrip.js.map +1 -0
- package/dist/browser/content/chart-bar.js +98 -0
- package/dist/browser/content/chart-bar.js.map +1 -1
- package/dist/browser/content/chart-inspection-core.js +28 -8
- package/dist/browser/content/chart-inspection-core.js.map +1 -1
- package/dist/browser/content/chart-message-catalog.js +18 -0
- package/dist/browser/content/chart-message-catalog.js.map +1 -1
- package/dist/browser/content/index.js +1 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/content/thumbnail-strip-messages.js +24 -0
- package/dist/browser/content/thumbnail-strip-messages.js.map +1 -0
- package/dist/browser/inputs/ChoiceInputs.js +132 -101
- package/dist/browser/inputs/ChoiceInputs.js.map +1 -1
- package/dist/browser/inputs/index.js +1 -0
- package/dist/browser/inputs/index.js.map +1 -1
- package/dist/browser/inputs/markdown/MarkdownSelectionToolbar.js +330 -0
- package/dist/browser/inputs/markdown/MarkdownSelectionToolbar.js.map +1 -0
- package/dist/browser/internal/field.js +96 -77
- package/dist/browser/internal/field.js.map +1 -1
- package/dist/browser/layout/AppWorkspace.js +7 -5
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/PanelDialog.js +92 -68
- package/dist/browser/layout/PanelDialog.js.map +1 -1
- package/dist/browser/surfaces/StatCell.js +82 -70
- package/dist/browser/surfaces/StatCell.js.map +1 -1
- package/dist/browser/surfaces/stat-cell-messages.js +4 -2
- package/dist/browser/surfaces/stat-cell-messages.js.map +1 -1
- package/dist/browser/widgets/DashboardFrame.js +93 -88
- package/dist/browser/widgets/DashboardFrame.js.map +1 -1
- package/dist/ssr/actions/Toolbar.js +8 -2
- package/dist/ssr/actions/Toolbar.js.map +1 -1
- package/dist/ssr/charts/core/bar-labels.js +5 -0
- package/dist/ssr/charts/core/bar-labels.js.map +1 -0
- package/dist/ssr/charts/core/bubble.js +166 -0
- package/dist/ssr/charts/core/bubble.js.map +1 -0
- package/dist/ssr/charts/core/default-styles.js +83 -0
- package/dist/ssr/charts/core/default-styles.js.map +1 -0
- package/dist/ssr/charts/core/funnel-layout.js +79 -0
- package/dist/ssr/charts/core/funnel-layout.js.map +1 -0
- package/dist/ssr/charts/core/funnel.js +27 -0
- package/dist/ssr/charts/core/funnel.js.map +1 -0
- package/dist/ssr/charts/core/index.js +6 -1
- package/dist/ssr/charts/core/index.js.map +1 -1
- package/dist/ssr/charts/core/pareto.js +120 -0
- package/dist/ssr/charts/core/pareto.js.map +1 -0
- package/dist/ssr/charts/core/radar.js +101 -0
- package/dist/ssr/charts/core/radar.js.map +1 -0
- package/dist/ssr/charts/core/registry.js +11 -1
- package/dist/ssr/charts/core/registry.js.map +1 -1
- package/dist/ssr/charts/core/render-size.js +3 -1
- package/dist/ssr/charts/core/render-size.js.map +1 -1
- package/dist/ssr/charts/core/render.js +19 -0
- package/dist/ssr/charts/core/render.js.map +1 -1
- package/dist/ssr/charts/core/snapshot.js +1 -1
- package/dist/ssr/charts/core/snapshot.js.map +1 -1
- package/dist/ssr/charts/core/svg-barGauge.js +67 -0
- package/dist/ssr/charts/core/svg-barGauge.js.map +1 -0
- package/dist/ssr/charts/core/svg-boxplot.js +127 -0
- package/dist/ssr/charts/core/svg-boxplot.js.map +1 -0
- package/dist/ssr/charts/core/svg-common.js +1065 -0
- package/dist/ssr/charts/core/svg-common.js.map +1 -0
- package/dist/ssr/charts/core/svg-gauge.js +185 -0
- package/dist/ssr/charts/core/svg-gauge.js.map +1 -0
- package/dist/ssr/charts/core/svg-heatmap.js +80 -0
- package/dist/ssr/charts/core/svg-heatmap.js.map +1 -0
- package/dist/ssr/charts/core/svg-histogram.js +73 -0
- package/dist/ssr/charts/core/svg-histogram.js.map +1 -0
- package/dist/ssr/charts/core/svg-renderers.js +9 -1777
- package/dist/ssr/charts/core/svg-renderers.js.map +1 -1
- package/dist/ssr/charts/core/svg-scatter.js +114 -0
- package/dist/ssr/charts/core/svg-scatter.js.map +1 -0
- package/dist/ssr/charts/core/treemap.js +138 -0
- package/dist/ssr/charts/core/treemap.js.map +1 -0
- package/dist/ssr/charts/description.js.map +1 -1
- package/dist/ssr/content/ChartRoot.js +21 -7
- package/dist/ssr/content/ChartRoot.js.map +1 -1
- package/dist/ssr/content/ChartSnapshotView.js +1 -0
- package/dist/ssr/content/ChartSnapshotView.js.map +1 -1
- package/dist/ssr/content/DataTable.js +12 -16
- package/dist/ssr/content/DataTable.js.map +1 -1
- package/dist/ssr/content/Lightbox.js +32 -3
- package/dist/ssr/content/Lightbox.js.map +1 -1
- package/dist/ssr/content/ThumbnailStrip.js +103 -0
- package/dist/ssr/content/ThumbnailStrip.js.map +1 -0
- package/dist/ssr/content/chart-bar.js +98 -0
- package/dist/ssr/content/chart-bar.js.map +1 -1
- package/dist/ssr/content/chart-inspection-core.js +28 -8
- package/dist/ssr/content/chart-inspection-core.js.map +1 -1
- package/dist/ssr/content/chart-message-catalog.js +18 -0
- package/dist/ssr/content/chart-message-catalog.js.map +1 -1
- package/dist/ssr/content/index.js +1 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/content/thumbnail-strip-messages.js +24 -0
- package/dist/ssr/content/thumbnail-strip-messages.js.map +1 -0
- package/dist/ssr/inputs/ChoiceInputs.js +55 -40
- package/dist/ssr/inputs/ChoiceInputs.js.map +1 -1
- package/dist/ssr/inputs/index.js +1 -0
- package/dist/ssr/inputs/index.js.map +1 -1
- package/dist/ssr/inputs/markdown/MarkdownSelectionToolbar.js +293 -0
- package/dist/ssr/inputs/markdown/MarkdownSelectionToolbar.js.map +1 -0
- package/dist/ssr/internal/field.js +36 -24
- package/dist/ssr/internal/field.js.map +1 -1
- package/dist/ssr/layout/AppWorkspace.js +5 -1
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/PanelDialog.js +40 -26
- package/dist/ssr/layout/PanelDialog.js.map +1 -1
- package/dist/ssr/surfaces/StatCell.js +29 -18
- package/dist/ssr/surfaces/StatCell.js.map +1 -1
- package/dist/ssr/surfaces/stat-cell-messages.js +4 -2
- package/dist/ssr/surfaces/stat-cell-messages.js.map +1 -1
- package/dist/ssr/widgets/DashboardFrame.js +6 -11
- package/dist/ssr/widgets/DashboardFrame.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/actions/Toolbar.d.ts +2 -0
- package/dist/types/charts/core/bar-labels.d.ts +1 -0
- package/dist/types/charts/core/bubble.d.ts +66 -0
- package/dist/types/charts/core/default-styles.d.ts +1 -0
- package/dist/types/charts/core/funnel-layout.d.ts +43 -0
- package/dist/types/charts/core/funnel.d.ts +13 -0
- package/dist/types/charts/core/index.d.ts +6 -1
- package/dist/types/charts/core/pareto.d.ts +40 -0
- package/dist/types/charts/core/radar.d.ts +47 -0
- package/dist/types/charts/core/registry.d.ts +10 -0
- package/dist/types/charts/core/render-size.d.ts +1 -1
- package/dist/types/charts/core/svg-barGauge.d.ts +3 -0
- package/dist/types/charts/core/svg-boxplot.d.ts +18 -0
- package/dist/types/charts/core/svg-common.d.ts +612 -0
- package/dist/types/charts/core/svg-gauge.d.ts +6 -0
- package/dist/types/charts/core/svg-heatmap.d.ts +6 -0
- package/dist/types/charts/core/svg-histogram.d.ts +16 -0
- package/dist/types/charts/core/svg-renderers.d.ts +8 -612
- package/dist/types/charts/core/svg-scatter.d.ts +23 -0
- package/dist/types/charts/core/treemap.d.ts +45 -0
- package/dist/types/charts/description.d.ts +63 -0
- package/dist/types/content/ChartRoot.d.ts +1 -1
- package/dist/types/content/Lightbox.d.ts +2 -0
- package/dist/types/content/ThumbnailStrip.d.ts +29 -0
- package/dist/types/content/chart-bar.d.ts +38 -2
- package/dist/types/content/chart-inspection-core.d.ts +7 -0
- package/dist/types/content/chart-inspection.d.ts +1 -0
- package/dist/types/content/chart-message-catalog.d.ts +8 -0
- package/dist/types/content/index.d.ts +1 -0
- package/dist/types/content/thumbnail-strip-messages.d.ts +10 -0
- package/dist/types/inputs/ChoiceInputs.d.ts +2 -0
- package/dist/types/inputs/index.d.ts +2 -0
- package/dist/types/inputs/markdown/MarkdownSelectionToolbar.d.ts +19 -0
- package/dist/types/internal/field.d.ts +2 -0
- package/dist/types/layout/PanelDialog.d.ts +5 -0
- package/dist/types/surfaces/stat-cell-messages.d.ts +1 -0
- package/dist/types/widgets/DashboardFrame.d.ts +4 -1
- package/package.json +2 -2
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
// Ported SVG algorithm, kept verbatim; separate module for per-kind frame loading.
|
|
2
|
+
import { autoBin, chartDatumSvg, computeAxisScale, computePlotArea, DEFAULT_HEIGHT, DEFAULT_WIDTH, emptyChart, fmt, normalizePadding, pickMapper, renderHeader, renderReferenceLines, renderXAxisNumeric, renderYAxis, svgRoot } from "./svg-common";
|
|
3
|
+
/**
|
|
4
|
+
* Render a histogram (frequency distribution) of the given observations.
|
|
5
|
+
* Uses Sturges' formula by default for bin count, or accepts an explicit
|
|
6
|
+
* count or list of bin edges.
|
|
7
|
+
*
|
|
8
|
+
* Bars are adjacent (no inter-bar gap) since a histogram represents a
|
|
9
|
+
* continuous distribution. The x-axis is numeric (bin edges as ticks).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* charts.histogram({ data: observations, title: "Reaction times (ms)" });
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* charts.histogram({ data: scores, bins: 20, yAxis: { label: "Count" } });
|
|
16
|
+
*/
|
|
17
|
+
export const histogram = opts => {
|
|
18
|
+
const width = opts.width ?? DEFAULT_WIDTH;
|
|
19
|
+
const height = opts.height ?? DEFAULT_HEIGHT;
|
|
20
|
+
const padding = normalizePadding(opts.padding);
|
|
21
|
+
const header = renderHeader(width, opts.title, opts.subtitle);
|
|
22
|
+
const finite = opts.data.filter(v => Number.isFinite(v));
|
|
23
|
+
if (finite.length === 0) return emptyChart(width, height, opts.className);
|
|
24
|
+
const {
|
|
25
|
+
edges,
|
|
26
|
+
counts
|
|
27
|
+
} = autoBin(finite, opts.bins);
|
|
28
|
+
const area = computePlotArea(width, height, padding, !!opts.xAxis?.label, !!opts.yAxis?.label, header.height, 0);
|
|
29
|
+
const xAxis = computeAxisScale(edges, opts.xAxis);
|
|
30
|
+
const yAxis = computeAxisScale([0, ...counts], opts.yAxis);
|
|
31
|
+
const xMap = pickMapper(xAxis.scale);
|
|
32
|
+
const yMap = pickMapper(yAxis.scale);
|
|
33
|
+
const body = [];
|
|
34
|
+
body.push(renderYAxis(yAxis, area, opts.yAxis));
|
|
35
|
+
body.push(renderXAxisNumeric(xAxis, area, height, opts.xAxis));
|
|
36
|
+
const zeroPx = yAxis.scale === "log" ? area.y1 : yMap(0, yAxis.domain, [area.y1, area.y0]);
|
|
37
|
+
for (let i = 0; i < counts.length; i++) {
|
|
38
|
+
const left = xMap(edges[i], xAxis.domain, [area.x0, area.x1]);
|
|
39
|
+
const right = xMap(edges[i + 1], xAxis.domain, [area.x0, area.x1]);
|
|
40
|
+
const c = counts[i];
|
|
41
|
+
if (yAxis.scale === "log" && c <= 0) continue;
|
|
42
|
+
const top = yMap(c, yAxis.domain, [area.y1, area.y0]);
|
|
43
|
+
body.push(chartDatumSvg(`<rect class="stdlib-chart-bar stdlib-chart-series-0" x="${fmt(left)}" y="${fmt(top)}" width="${fmt(right - left)}" height="${fmt(zeroPx - top)}"/>`, {
|
|
44
|
+
index: i,
|
|
45
|
+
role: "bin",
|
|
46
|
+
anchor: [(left + right) / 2, (top + zeroPx) / 2],
|
|
47
|
+
values: [{
|
|
48
|
+
key: "from",
|
|
49
|
+
value: edges[i],
|
|
50
|
+
formatted: opts.xAxis?.format?.(edges[i])
|
|
51
|
+
}, {
|
|
52
|
+
key: "to",
|
|
53
|
+
value: edges[i + 1],
|
|
54
|
+
formatted: opts.xAxis?.format?.(edges[i + 1])
|
|
55
|
+
}, {
|
|
56
|
+
key: "upperInclusive",
|
|
57
|
+
value: i === counts.length - 1 ? "true" : "false"
|
|
58
|
+
}, {
|
|
59
|
+
key: "count",
|
|
60
|
+
value: c
|
|
61
|
+
}]
|
|
62
|
+
}, opts.inspect));
|
|
63
|
+
}
|
|
64
|
+
if (opts.references && opts.references.length > 0) {
|
|
65
|
+
body.push(renderReferenceLines(opts.references, xAxis, yAxis, area));
|
|
66
|
+
}
|
|
67
|
+
return svgRoot({
|
|
68
|
+
width,
|
|
69
|
+
height,
|
|
70
|
+
className: opts.className
|
|
71
|
+
}, header.svg + body.join(""));
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=svg-histogram.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["charts/core/svg-histogram.ts"],"sourcesContent":["// Ported SVG algorithm, kept verbatim; separate module for per-kind frame loading.\nimport {\n autoBin,\n chartDatumSvg,\n computeAxisScale,\n computePlotArea,\n DEFAULT_HEIGHT,\n DEFAULT_WIDTH,\n emptyChart,\n fmt,\n type HistogramOptions,\n normalizePadding,\n pickMapper,\n renderHeader,\n renderReferenceLines,\n renderXAxisNumeric,\n renderYAxis,\n svgRoot,\n} from \"./svg-common\";\n/**\n * Render a histogram (frequency distribution) of the given observations.\n * Uses Sturges' formula by default for bin count, or accepts an explicit\n * count or list of bin edges.\n *\n * Bars are adjacent (no inter-bar gap) since a histogram represents a\n * continuous distribution. The x-axis is numeric (bin edges as ticks).\n *\n * @example\n * charts.histogram({ data: observations, title: \"Reaction times (ms)\" });\n *\n * @example\n * charts.histogram({ data: scores, bins: 20, yAxis: { label: \"Count\" } });\n */\nexport const histogram = (opts: HistogramOptions): string => {\n const width = opts.width ?? DEFAULT_WIDTH;\n const height = opts.height ?? DEFAULT_HEIGHT;\n const padding = normalizePadding(opts.padding);\n const header = renderHeader(width, opts.title, opts.subtitle);\n\n const finite = opts.data.filter((v) => Number.isFinite(v));\n if (finite.length === 0) return emptyChart(width, height, opts.className);\n\n const { edges, counts } = autoBin(finite, opts.bins);\n const area = computePlotArea(width, height, padding, !!opts.xAxis?.label, !!opts.yAxis?.label, header.height, 0);\n\n const xAxis = computeAxisScale(edges, opts.xAxis);\n const yAxis = computeAxisScale([0, ...counts], opts.yAxis);\n const xMap = pickMapper(xAxis.scale);\n const yMap = pickMapper(yAxis.scale);\n\n const body: string[] = [];\n body.push(renderYAxis(yAxis, area, opts.yAxis));\n body.push(renderXAxisNumeric(xAxis, area, height, opts.xAxis));\n\n const zeroPx = yAxis.scale === \"log\" ? area.y1 : yMap(0, yAxis.domain, [area.y1, area.y0]);\n for (let i = 0; i < counts.length; i++) {\n const left = xMap(edges[i]!, xAxis.domain, [area.x0, area.x1]);\n const right = xMap(edges[i + 1]!, xAxis.domain, [area.x0, area.x1]);\n const c = counts[i]!;\n if (yAxis.scale === \"log\" && c <= 0) continue;\n const top = yMap(c, yAxis.domain, [area.y1, area.y0]);\n body.push(\n chartDatumSvg(\n `<rect class=\"stdlib-chart-bar stdlib-chart-series-0\" x=\"${fmt(left)}\" y=\"${fmt(top)}\" width=\"${fmt(right - left)}\" height=\"${fmt(zeroPx - top)}\"/>`,\n {\n index: i,\n role: \"bin\",\n anchor: [(left + right) / 2, (top + zeroPx) / 2],\n values: [\n { key: \"from\", value: edges[i]!, formatted: opts.xAxis?.format?.(edges[i]!) },\n { key: \"to\", value: edges[i + 1]!, formatted: opts.xAxis?.format?.(edges[i + 1]!) },\n { key: \"upperInclusive\", value: i === counts.length - 1 ? \"true\" : \"false\" },\n { key: \"count\", value: c },\n ],\n },\n opts.inspect,\n ),\n );\n }\n\n if (opts.references && opts.references.length > 0) {\n body.push(renderReferenceLines(opts.references, xAxis, yAxis, area));\n }\n\n return svgRoot({ width, height, className: opts.className }, header.svg + body.join(\"\"));\n};\n"],"mappings":"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","ignoreList":[]}
|