@sqlrooms/vega 0.19.2 → 0.20.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.
@@ -17,6 +17,20 @@ export declare const VegaChartToolParameters: z.ZodObject<{
17
17
  reasoning: string;
18
18
  }>;
19
19
  export type VegaChartToolParameters = z.infer<typeof VegaChartToolParameters>;
20
+ export type VegaChartToolArgs = z.ZodObject<{
21
+ sqlQuery: z.ZodString;
22
+ vegaLiteSpec: z.ZodString;
23
+ reasoning: z.ZodString;
24
+ }>;
25
+ export type VegaChartToolLlmResult = {
26
+ success: boolean;
27
+ details: string;
28
+ };
29
+ export type VegaChartToolAdditionalData = {
30
+ sqlQuery: string;
31
+ vegaLiteSpec: object;
32
+ };
33
+ export type VegaChartToolContext = unknown;
20
34
  /**
21
35
  * Default description for the VegaChart tool
22
36
  */
@@ -1 +1 @@
1
- {"version":3,"file":"VegaChartTool.d.ts","sourceRoot":"","sources":["../src/VegaChartTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,8BAA8B,mNAGC,CAAC;AAE7C;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,WAA4C,GAC7C,GAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,WAAW,CA8BnB"}
1
+ {"version":3,"file":"VegaChartTool.d.ts","sourceRoot":"","sources":["../src/VegaChartTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE9E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,SAAS,CAAC;IAC1C,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC;IACtB,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;CACxB,CAAC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,8BAA8B,mNAGC,CAAC;AAE7C;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,WAA4C,GAC7C,GAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,WAAW,CAmCnB"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { VegaChartToolResult } from './VegaChartToolResult';
3
+ import { extendedTool } from '@openassistant/utils';
3
4
  /**
4
5
  * Zod schema for the VegaChart tool parameters
5
6
  */
@@ -22,7 +23,7 @@ In the response:
22
23
  * @returns A tool that can be used with the AI assistant
23
24
  */
24
25
  export function createVegaChartTool({ description = DEFAULT_VEGA_CHART_DESCRIPTION, } = {}) {
25
- return {
26
+ return extendedTool({
26
27
  description,
27
28
  parameters: VegaChartToolParameters,
28
29
  execute: async ({ sqlQuery, vegaLiteSpec }) => {
@@ -51,6 +52,6 @@ export function createVegaChartTool({ description = DEFAULT_VEGA_CHART_DESCRIPTI
51
52
  }
52
53
  },
53
54
  component: VegaChartToolResult,
54
- };
55
+ });
55
56
  }
56
57
  //# sourceMappingURL=VegaChartTool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VegaChartTool.js","sourceRoot":"","sources":["../src/VegaChartTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAG1D;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;4CAGF,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,WAAW,GAAG,8BAA8B,MAG1C,EAAE;IACJ,OAAO;QACL,WAAW;QACX,UAAU,EAAE,uBAAuB;QACnC,OAAO,EAAE,KAAK,EAAE,EAAC,QAAQ,EAAE,YAAY,EAA0B,EAAE,EAAE;YACnE,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACpD,+CAA+C;gBAC/C,+HAA+H;gBAC/H,OAAO;oBACL,SAAS,EAAE;wBACT,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,6BAA6B;qBACvC;oBACD,cAAc,EAAE;wBACd,QAAQ;wBACR,YAAY,EAAE,kBAAkB;qBACjC;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,SAAS,EAAE;wBACT,OAAO,EAAE,KAAK;wBACd,OAAO,EAAE,4BAA4B,KAAK,EAAE;qBAC7C;iBACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,SAAS,EAAE,mBAAmB;KAC/B,CAAC;AACJ,CAAC","sourcesContent":["import {z} from 'zod';\nimport {VegaChartToolResult} from './VegaChartToolResult';\nimport {AiSliceTool} from '@sqlrooms/ai';\n\n/**\n * Zod schema for the VegaChart tool parameters\n */\nexport const VegaChartToolParameters = z.object({\n sqlQuery: z.string(),\n vegaLiteSpec: z.string(),\n reasoning: z.string(),\n});\n\nexport type VegaChartToolParameters = z.infer<typeof VegaChartToolParameters>;\n\n/**\n * Default description for the VegaChart tool\n */\nexport const DEFAULT_VEGA_CHART_DESCRIPTION = `A tool for creating VegaLite charts based on the schema of the SQL query result from the \"query\" tool.\nIn the response:\n- omit the data from the vegaLiteSpec\n- provide an sql query in sqlQuery instead.`;\n\n/**\n * Creates a VegaLite chart visualization tool for AI assistants\n * @param options - Configuration options for the VegaChart tool\n * @param options.description - Custom description for the tool (defaults to a standard description)\n * @returns A tool that can be used with the AI assistant\n */\nexport function createVegaChartTool({\n description = DEFAULT_VEGA_CHART_DESCRIPTION,\n}: {\n description?: string;\n} = {}): AiSliceTool {\n return {\n description,\n parameters: VegaChartToolParameters,\n execute: async ({sqlQuery, vegaLiteSpec}: VegaChartToolParameters) => {\n try {\n const parsedVegaLiteSpec = JSON.parse(vegaLiteSpec);\n // data object of the vegaLiteSpec and sqlQuery\n // it is not used yet, but we can use it to create a JSON editor for user to edit the vegaLiteSpec so that chart can be updated\n return {\n llmResult: {\n success: true,\n details: 'Chart created successfully.',\n },\n additionalData: {\n sqlQuery,\n vegaLiteSpec: parsedVegaLiteSpec,\n },\n };\n } catch (error) {\n return {\n llmResult: {\n success: false,\n details: `Not a valid JSON object: ${error}`,\n },\n };\n }\n },\n component: VegaChartToolResult,\n };\n}\n"]}
1
+ {"version":3,"file":"VegaChartTool.js","sourceRoot":"","sources":["../src/VegaChartTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAElD;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAsBH;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;4CAGF,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,WAAW,GAAG,8BAA8B,MAG1C,EAAE;IACJ,OAAO,YAAY,CAKjB;QACA,WAAW;QACX,UAAU,EAAE,uBAAuB;QACnC,OAAO,EAAE,KAAK,EAAE,EAAC,QAAQ,EAAE,YAAY,EAA0B,EAAE,EAAE;YACnE,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACpD,+CAA+C;gBAC/C,+HAA+H;gBAC/H,OAAO;oBACL,SAAS,EAAE;wBACT,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,6BAA6B;qBACvC;oBACD,cAAc,EAAE;wBACd,QAAQ;wBACR,YAAY,EAAE,kBAAkB;qBACjC;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,SAAS,EAAE;wBACT,OAAO,EAAE,KAAK;wBACd,OAAO,EAAE,4BAA4B,KAAK,EAAE;qBAC7C;iBACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,SAAS,EAAE,mBAAmB;KAC/B,CAAC,CAAC;AACL,CAAC","sourcesContent":["import {z} from 'zod';\nimport {VegaChartToolResult} from './VegaChartToolResult';\nimport {AiSliceTool} from '@sqlrooms/ai';\nimport {extendedTool} from '@openassistant/utils';\n\n/**\n * Zod schema for the VegaChart tool parameters\n */\nexport const VegaChartToolParameters = z.object({\n sqlQuery: z.string(),\n vegaLiteSpec: z.string(),\n reasoning: z.string(),\n});\n\nexport type VegaChartToolParameters = z.infer<typeof VegaChartToolParameters>;\n\nexport type VegaChartToolArgs = z.ZodObject<{\n sqlQuery: z.ZodString;\n vegaLiteSpec: z.ZodString;\n reasoning: z.ZodString;\n}>;\n\nexport type VegaChartToolLlmResult = {\n success: boolean;\n details: string;\n};\n\nexport type VegaChartToolAdditionalData = {\n sqlQuery: string;\n vegaLiteSpec: object;\n};\n\nexport type VegaChartToolContext = unknown;\n\n/**\n * Default description for the VegaChart tool\n */\nexport const DEFAULT_VEGA_CHART_DESCRIPTION = `A tool for creating VegaLite charts based on the schema of the SQL query result from the \"query\" tool.\nIn the response:\n- omit the data from the vegaLiteSpec\n- provide an sql query in sqlQuery instead.`;\n\n/**\n * Creates a VegaLite chart visualization tool for AI assistants\n * @param options - Configuration options for the VegaChart tool\n * @param options.description - Custom description for the tool (defaults to a standard description)\n * @returns A tool that can be used with the AI assistant\n */\nexport function createVegaChartTool({\n description = DEFAULT_VEGA_CHART_DESCRIPTION,\n}: {\n description?: string;\n} = {}): AiSliceTool {\n return extendedTool<\n VegaChartToolArgs,\n VegaChartToolLlmResult,\n VegaChartToolAdditionalData,\n VegaChartToolContext\n >({\n description,\n parameters: VegaChartToolParameters,\n execute: async ({sqlQuery, vegaLiteSpec}: VegaChartToolParameters) => {\n try {\n const parsedVegaLiteSpec = JSON.parse(vegaLiteSpec);\n // data object of the vegaLiteSpec and sqlQuery\n // it is not used yet, but we can use it to create a JSON editor for user to edit the vegaLiteSpec so that chart can be updated\n return {\n llmResult: {\n success: true,\n details: 'Chart created successfully.',\n },\n additionalData: {\n sqlQuery,\n vegaLiteSpec: parsedVegaLiteSpec,\n },\n };\n } catch (error) {\n return {\n llmResult: {\n success: false,\n details: `Not a valid JSON object: ${error}`,\n },\n };\n }\n },\n component: VegaChartToolResult,\n });\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sqlrooms/vega",
3
- "version": "0.19.2",
3
+ "version": "0.20.0",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "module": "dist/index.js",
@@ -18,10 +18,11 @@
18
18
  "access": "public"
19
19
  },
20
20
  "dependencies": {
21
- "@sqlrooms/ai": "0.19.2",
22
- "@sqlrooms/duckdb": "0.19.2",
23
- "@sqlrooms/ui": "0.19.2",
24
- "@sqlrooms/utils": "0.19.2",
21
+ "@openassistant/utils": "^0.5.13",
22
+ "@sqlrooms/ai": "0.20.0",
23
+ "@sqlrooms/duckdb": "0.20.0",
24
+ "@sqlrooms/ui": "0.20.0",
25
+ "@sqlrooms/utils": "0.20.0",
25
26
  "react-vega": "^7.6.0",
26
27
  "vega": "^5.33.0",
27
28
  "vega-lite": "^5.23.0",
@@ -38,5 +39,5 @@
38
39
  "typecheck": "tsc --noEmit",
39
40
  "typedoc": "typedoc"
40
41
  },
41
- "gitHead": "92b70398a085ebbf622c4f18e44b1ef60139096e"
42
+ "gitHead": "b66f77cfa5bcf1be658e1f36ff01f5613041c653"
42
43
  }