@smallwebco/tinypivot-vue 1.0.55 → 1.0.58
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/README.md +7 -6
- package/dist/components/AIAnalyst.vue.d.ts +4 -1
- package/dist/components/AIAnalyst.vue.d.ts.map +1 -1
- package/dist/components/DataGrid.vue.d.ts.map +1 -1
- package/dist/composables/useAIAnalyst.d.ts +2 -0
- package/dist/composables/useAIAnalyst.d.ts.map +1 -1
- package/dist/style.css +1 -1
- package/dist/tinypivot-vue.js +2995 -2895
- package/dist/tinypivot-vue.js.map +1 -1
- package/dist/tinypivot-vue.umd.cjs +35 -35
- package/dist/tinypivot-vue.umd.cjs.map +1 -1
- package/package.json +11 -3
package/README.md
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
# @smallwebco/tinypivot-vue
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**Embed an AI Data Analyst in your Vue 3 app.** Ask questions in plain English, get instant SQL-powered insights. AI-enabled data grid with pivot tables and charts — all under 50KB gzipped.
|
|
4
4
|
|
|
5
5
|
**[Live Demo](https://tiny-pivot.com)** · **[Buy License](https://tiny-pivot.com/#pricing)**
|
|
6
6
|
|
|
7
7
|
## Why TinyPivot?
|
|
8
8
|
|
|
9
|
-
- **
|
|
10
|
-
- **
|
|
11
|
-
- **
|
|
9
|
+
- **Embedded AI Data Analyst**: Let users ask questions in plain English — AI generates SQL and returns results instantly
|
|
10
|
+
- **Bring Your Own Key (BYOK)**: Use your own OpenAI, Anthropic, or any LLM API key — full control over costs and privacy
|
|
11
|
+
- **Lightweight**: Under 50KB gzipped vs 500KB+ for AG Grid (10x smaller)
|
|
12
|
+
- **Batteries Included**: Pivot tables, 6 chart types, Excel-like features out of the box
|
|
12
13
|
- **One-Time License**: No subscriptions — pay once, use forever
|
|
13
14
|
|
|
14
15
|
## Installation
|
|
@@ -88,9 +89,9 @@ const data = [
|
|
|
88
89
|
| `@export` | `{ rowCount, filename }` | CSV exported |
|
|
89
90
|
| `@copy` | `{ text, cellCount }` | Cells copied |
|
|
90
91
|
|
|
91
|
-
## AI Data Analyst (Pro)
|
|
92
|
+
## Embedded AI Data Analyst (Pro)
|
|
92
93
|
|
|
93
|
-
|
|
94
|
+
Embed an AI-powered data analyst that lets users explore data using natural language. Ask questions like "What's the return rate by category?" and get instant results — no SQL knowledge required for end users.
|
|
94
95
|
|
|
95
96
|
```vue
|
|
96
97
|
<script setup lang="ts">
|
|
@@ -3,7 +3,10 @@ import { AIAnalystConfig, AIConversationUpdateEvent, AIDataLoadedEvent, AIErrorE
|
|
|
3
3
|
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
4
4
|
config: AIAnalystConfig;
|
|
5
5
|
theme?: "light" | "dark" | undefined;
|
|
6
|
-
}>>, {
|
|
6
|
+
}>>, {
|
|
7
|
+
loadFullData: () => Promise<Record<string, unknown>[] | null>;
|
|
8
|
+
selectedDataSource: import('vue').ComputedRef<string | undefined>;
|
|
9
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
7
10
|
dataLoaded: (payload: AIDataLoadedEvent) => void;
|
|
8
11
|
conversationUpdate: (payload: AIConversationUpdateEvent) => void;
|
|
9
12
|
queryExecuted: (payload: AIQueryExecutedEvent) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AIAnalyst.vue.d.ts","sourceRoot":"","sources":["../../src/components/AIAnalyst.vue"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EAEZ,oBAAoB,EAErB,MAAM,4BAA4B,CAAA;;
|
|
1
|
+
{"version":3,"file":"AIAnalyst.vue.d.ts","sourceRoot":"","sources":["../../src/components/AIAnalyst.vue"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EAEZ,oBAAoB,EAErB,MAAM,4BAA4B,CAAA;;YA0sEzB,eAAe;;;;;;;;;;;;;;;YAAf,eAAe;;;;;;;;;;;;AAPzB,wBAWG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataGrid.vue.d.ts","sourceRoot":"","sources":["../../src/components/DataGrid.vue"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EAGrB,MAAM,4BAA4B,CAAA;;
|
|
1
|
+
{"version":3,"file":"DataGrid.vue.d.ts","sourceRoot":"","sources":["../../src/components/DataGrid.vue"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EAGrB,MAAM,4BAA4B,CAAA;;UA6sH3B,OAAO,MAAM,EAAE,OAAO,CAAC,EAAE;;;;;;;;;;;;;;;;;;;IAoB/B,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UApBjE,OAAO,MAAM,EAAE,OAAO,CAAC,EAAE;;;;;;;;;;;;;;;;;;;IAoB/B,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAP/D,OAAO,GAAG,MAAM,GAAG,MAAM;cATtB,IAAI,GAAG,IAAI,GAAG,MAAM;eAiBnB,eAAe;aApBjB,OAAO;eACL,MAAM;kBACH,MAAM;eAET,OAAO;kBAEJ,OAAO;kBACP,OAAO;sBACH,OAAO;cACf,MAAM;wBACI,OAAO;qBACV,OAAO;iBAEX,OAAO;oBACJ,MAAM;0BACA,OAAO;mBACd,MAAM;eACV,MAAM;eACN,MAAM;;AAzBpB,wBA8BG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
|
|
@@ -94,5 +94,7 @@ export declare function useAIAnalyst(options: UseAIAnalystOptions): {
|
|
|
94
94
|
importConversation: (conv: AIConversation) => void;
|
|
95
95
|
/** Refresh table list from endpoint */
|
|
96
96
|
fetchTables: () => Promise<void>;
|
|
97
|
+
/** Load full data for the currently selected data source */
|
|
98
|
+
loadFullData: () => Promise<Record<string, unknown>[] | null>;
|
|
97
99
|
};
|
|
98
100
|
//# sourceMappingURL=useAIAnalyst.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAIAnalyst.d.ts","sourceRoot":"","sources":["../../src/composables/useAIAnalyst.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EACZ,YAAY,EAEZ,oBAAoB,EACpB,aAAa,EAGd,MAAM,4BAA4B,CAAA;AAkBnC,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACjD,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAA;IACjE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACvD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;CACxC;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"useAIAnalyst.d.ts","sourceRoot":"","sources":["../../src/composables/useAIAnalyst.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EACZ,YAAY,EAEZ,oBAAoB,EACpB,aAAa,EAGd,MAAM,4BAA4B,CAAA;AAkBnC,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACjD,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAA;IACjE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACvD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;CACxC;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwtBrD,qEAAqE;;qCAvlBzB,MAAM;2BAwGhB,MAAM;;8BA+cX,cAAc;+BAOX,cAAc;IAkC9C,uCAAuC;;IAEvC,4DAA4D;wBAnJ/B,QAAQ,OAAO,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;EAsJzE"}
|