@inkindcards/semantic-layer 2.3.0 → 2.4.1

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.
@@ -73,7 +73,7 @@ interface DataInspectorProps {
73
73
  }
74
74
  /**
75
75
  * Dev-mode overlay that wraps your app in an InspectableRegistry and provides
76
- * a floating toggle + inspector modal for data migration.
76
+ * a floating toggle + unified modal for data migration and report building.
77
77
  * Renders the registry context so <Inspectable> children can register.
78
78
  */
79
79
  declare function DataInspector({ children }: DataInspectorProps): react_jsx_runtime.JSX.Element;
@@ -131,4 +131,32 @@ interface MigrationConfig {
131
131
  */
132
132
  declare function generateMigrationPrompt(config: MigrationConfig): string;
133
133
 
134
- export { AdminDashboard, type AdminDashboardProps, type ChartAnalysis, DataCatalog, type DataCatalogProps, DataInspector, type DataInspectorProps, type DimensionMapping, type FieldMapping, type FieldMatch, Inspectable, type InspectableProps, type MatchConfidence, MetricPicker, type MetricPickerProps, type MigrationConfig, ResultsTable, type ResultsTableProps, analyzeChartData, generateMigrationPrompt, matchField, matchFields };
134
+ type WidgetType = "line" | "bar" | "area" | "pie" | "table" | "kpi";
135
+ type DashboardLayout = "single" | "two-column" | "dashboard";
136
+ interface WidgetConfig {
137
+ id: string;
138
+ title: string;
139
+ type: WidgetType;
140
+ metrics: SemanticField[];
141
+ groupBy: SemanticField[];
142
+ grain: TimeGrain | null;
143
+ comparisonMetric?: SemanticField;
144
+ }
145
+ type TimePreset = "12m" | "6m" | "3m" | "1m" | "1w" | "1d";
146
+ interface SharedFilter {
147
+ dimension: SemanticField;
148
+ label: string;
149
+ timePreset?: TimePreset | null;
150
+ }
151
+ interface ReportConfig {
152
+ dashboardTitle: string;
153
+ layout: DashboardLayout;
154
+ widgets: WidgetConfig[];
155
+ sharedFilters: SharedFilter[];
156
+ }
157
+ declare function generateReportPrompt(config: ReportConfig): string;
158
+ declare function isRunningInIframe(): boolean;
159
+ declare function canOpenInLovable(prompt: string): boolean;
160
+ declare function openInLovable(prompt: string): void;
161
+
162
+ export { AdminDashboard, type AdminDashboardProps, type ChartAnalysis, type DashboardLayout, DataCatalog, type DataCatalogProps, DataInspector, type DataInspectorProps, type DimensionMapping, type FieldMapping, type FieldMatch, Inspectable, type InspectableProps, type MatchConfidence, MetricPicker, type MetricPickerProps, type MigrationConfig, type ReportConfig, ResultsTable, type ResultsTableProps, type SharedFilter, type TimePreset, type WidgetConfig, type WidgetType, analyzeChartData, canOpenInLovable, generateMigrationPrompt, generateReportPrompt, isRunningInIframe, matchField, matchFields, openInLovable };
@@ -73,7 +73,7 @@ interface DataInspectorProps {
73
73
  }
74
74
  /**
75
75
  * Dev-mode overlay that wraps your app in an InspectableRegistry and provides
76
- * a floating toggle + inspector modal for data migration.
76
+ * a floating toggle + unified modal for data migration and report building.
77
77
  * Renders the registry context so <Inspectable> children can register.
78
78
  */
79
79
  declare function DataInspector({ children }: DataInspectorProps): react_jsx_runtime.JSX.Element;
@@ -131,4 +131,32 @@ interface MigrationConfig {
131
131
  */
132
132
  declare function generateMigrationPrompt(config: MigrationConfig): string;
133
133
 
134
- export { AdminDashboard, type AdminDashboardProps, type ChartAnalysis, DataCatalog, type DataCatalogProps, DataInspector, type DataInspectorProps, type DimensionMapping, type FieldMapping, type FieldMatch, Inspectable, type InspectableProps, type MatchConfidence, MetricPicker, type MetricPickerProps, type MigrationConfig, ResultsTable, type ResultsTableProps, analyzeChartData, generateMigrationPrompt, matchField, matchFields };
134
+ type WidgetType = "line" | "bar" | "area" | "pie" | "table" | "kpi";
135
+ type DashboardLayout = "single" | "two-column" | "dashboard";
136
+ interface WidgetConfig {
137
+ id: string;
138
+ title: string;
139
+ type: WidgetType;
140
+ metrics: SemanticField[];
141
+ groupBy: SemanticField[];
142
+ grain: TimeGrain | null;
143
+ comparisonMetric?: SemanticField;
144
+ }
145
+ type TimePreset = "12m" | "6m" | "3m" | "1m" | "1w" | "1d";
146
+ interface SharedFilter {
147
+ dimension: SemanticField;
148
+ label: string;
149
+ timePreset?: TimePreset | null;
150
+ }
151
+ interface ReportConfig {
152
+ dashboardTitle: string;
153
+ layout: DashboardLayout;
154
+ widgets: WidgetConfig[];
155
+ sharedFilters: SharedFilter[];
156
+ }
157
+ declare function generateReportPrompt(config: ReportConfig): string;
158
+ declare function isRunningInIframe(): boolean;
159
+ declare function canOpenInLovable(prompt: string): boolean;
160
+ declare function openInLovable(prompt: string): void;
161
+
162
+ export { AdminDashboard, type AdminDashboardProps, type ChartAnalysis, type DashboardLayout, DataCatalog, type DataCatalogProps, DataInspector, type DataInspectorProps, type DimensionMapping, type FieldMapping, type FieldMatch, Inspectable, type InspectableProps, type MatchConfidence, MetricPicker, type MetricPickerProps, type MigrationConfig, type ReportConfig, ResultsTable, type ResultsTableProps, type SharedFilter, type TimePreset, type WidgetConfig, type WidgetType, analyzeChartData, canOpenInLovable, generateMigrationPrompt, generateReportPrompt, isRunningInIframe, matchField, matchFields, openInLovable };