@x12i/analytix-ui 1.0.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.
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import { AnalytixRunResult } from "@x12i/analytix-contracts";
3
+ export interface WidgetProps {
4
+ title?: string;
5
+ result: AnalytixRunResult;
6
+ }
7
+ export declare const MetricWidget: React.FC<WidgetProps>;
8
+ export declare const TableWidget: React.FC<WidgetProps>;
9
+ export declare const MatrixWidget: React.FC<WidgetProps>;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAO9C,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAoC7C,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA+B9C,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MatrixWidget = exports.TableWidget = exports.MetricWidget = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const MetricWidget = ({ title, result }) => {
9
+ return react_1.default.createElement("div", { className: "analytix-widget metric-widget", style: { padding: "16px", border: "1px solid #ccc", borderRadius: "8px" } }, react_1.default.createElement("h3", null, title || "Metric"), react_1.default.createElement("div", { className: "value", style: { fontSize: "24px", fontWeight: "bold" } }, String(result.data)));
10
+ };
11
+ exports.MetricWidget = MetricWidget;
12
+ const TableWidget = ({ title, result }) => {
13
+ const data = Array.isArray(result.data) ? result.data : [];
14
+ if (data.length === 0) {
15
+ return react_1.default.createElement("div", null, "No data available");
16
+ }
17
+ const headers = Object.keys(data[0]);
18
+ return react_1.default.createElement("div", { className: "analytix-widget table-widget", style: { padding: "16px", border: "1px solid #ccc", borderRadius: "8px" } }, react_1.default.createElement("h3", null, title || "Table"), react_1.default.createElement("table", { style: { width: "100%", borderCollapse: "collapse" } }, react_1.default.createElement("thead", null, react_1.default.createElement("tr", null, headers.map((h) => react_1.default.createElement("th", { key: h, style: { borderBottom: "2px solid #ddd", padding: "8px", textAlign: "left" } }, h)))), react_1.default.createElement("tbody", null, data.map((row, idx) => react_1.default.createElement("tr", { key: idx }, headers.map((h) => react_1.default.createElement("td", { key: h, style: { borderBottom: "1px solid #eee", padding: "8px" } }, String(row[h]))))))));
19
+ };
20
+ exports.TableWidget = TableWidget;
21
+ const MatrixWidget = ({ title, result }) => {
22
+ const matrix = result.data;
23
+ if (!matrix || !matrix.cells)
24
+ return react_1.default.createElement("div", null, "No Matrix Data");
25
+ return react_1.default.createElement("div", { className: "analytix-widget matrix-widget", style: { padding: "16px", border: "1px solid #ccc", borderRadius: "8px" } }, react_1.default.createElement("h3", null, title || "Matrix"), react_1.default.createElement("div", { style: { display: "grid", gridTemplateColumns: `repeat(${matrix.columns.length + 1}, 1fr)`, gap: "8px" } }, react_1.default.createElement("div", { style: { fontWeight: "bold" } }, "-"), matrix.columns.map((c) => react_1.default.createElement("div", { key: c.key, style: { fontWeight: "bold" } }, c.label)), matrix.rows.map((row) => {
26
+ return react_1.default.createElement(react_1.default.Fragment, { key: row.key }, react_1.default.createElement("div", { style: { fontWeight: "bold" } }, row.label), matrix.columns.map((col) => {
27
+ const cell = matrix.cells.find((c) => c.rowKey === row.key && c.columnKey === col.key);
28
+ const valStr = cell ? (cell.state === "zero" ? "0" : cell.state === "not_supported" ? "N/A" : String(cell.value ?? "-")) : "-";
29
+ return react_1.default.createElement("div", { key: col.key, style: { padding: "8px", border: "1px solid #eee", background: cell?.state === "not_supported" ? "#f5f5f5" : "none" } }, valStr);
30
+ }));
31
+ })));
32
+ };
33
+ exports.MatrixWidget = MatrixWidget;
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "@x12i/analytix-ui",
3
+ "version": "1.0.0",
4
+ "main": "dist/index.js",
5
+ "types": "dist/index.d.ts",
6
+ "peerDependencies": {
7
+ "react": "^18.0.0"
8
+ },
9
+ "dependencies": {
10
+ "@x12i/analytix-contracts": "^1.0.0",
11
+ "@x12i/analytix-client": "^1.0.0"
12
+ },
13
+ "devDependencies": {
14
+ "@types/react": "^18.3.3"
15
+ },
16
+ "files": [
17
+ "dist"
18
+ ],
19
+ "publishConfig": {
20
+ "access": "public",
21
+ "registry": "https://registry.npmjs.org/"
22
+ },
23
+ "scripts": {
24
+ "build": "tsc -p tsconfig.json"
25
+ }
26
+ }