@sisense/sdk-ai-core 0.9.0 → 0.13.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.
Files changed (140) hide show
  1. package/dist/constants.d.ts +2 -0
  2. package/dist/constants.d.ts.map +1 -1
  3. package/dist/engines/build-chart/build-chart-engine.d.ts +4 -5
  4. package/dist/engines/build-chart/build-chart-engine.d.ts.map +1 -1
  5. package/dist/engines/build-chart/build-chart-service.d.ts +3 -3
  6. package/dist/engines/build-chart/build-chart-service.d.ts.map +1 -1
  7. package/dist/engines/build-chart/create-chart/assemble-chart-widget.d.ts +26 -0
  8. package/dist/engines/build-chart/create-chart/assemble-chart-widget.d.ts.map +1 -0
  9. package/dist/engines/build-chart/create-chart/chart-json-axes-mapping.d.ts +27 -0
  10. package/dist/engines/build-chart/create-chart/chart-json-axes-mapping.d.ts.map +1 -0
  11. package/dist/engines/build-chart/create-chart/create-chart.d.ts +5 -18
  12. package/dist/engines/build-chart/create-chart/create-chart.d.ts.map +1 -1
  13. package/dist/engines/build-chart/create-chart/generate-chart-recommendations.d.ts +8 -4
  14. package/dist/engines/build-chart/create-chart/generate-chart-recommendations.d.ts.map +1 -1
  15. package/dist/engines/build-chart/create-chart/generate-chart.d.ts +18 -0
  16. package/dist/engines/build-chart/create-chart/generate-chart.d.ts.map +1 -0
  17. package/dist/engines/build-chart/create-chart/get-columns-json.d.ts +15 -0
  18. package/dist/engines/build-chart/create-chart/get-columns-json.d.ts.map +1 -0
  19. package/dist/engines/build-chart/create-chart/resolve-chart-query.d.ts +11 -0
  20. package/dist/engines/build-chart/create-chart/resolve-chart-query.d.ts.map +1 -0
  21. package/dist/engines/build-chart/dataset-from-saved-chart-widget.d.ts +11 -0
  22. package/dist/engines/build-chart/dataset-from-saved-chart-widget.d.ts.map +1 -0
  23. package/dist/engines/build-chart/shared/csdk-data-options-for-llm.d.ts +14 -0
  24. package/dist/engines/build-chart/shared/csdk-data-options-for-llm.d.ts.map +1 -0
  25. package/dist/engines/build-chart/types.d.ts +283 -533
  26. package/dist/engines/build-chart/types.d.ts.map +1 -1
  27. package/dist/engines/build-chart/update-chart/apply-prior-chart-style.d.ts +10 -0
  28. package/dist/engines/build-chart/update-chart/apply-prior-chart-style.d.ts.map +1 -0
  29. package/dist/engines/build-chart/update-chart/chart-options-schemas.d.ts +1825 -7310
  30. package/dist/engines/build-chart/update-chart/chart-options-schemas.d.ts.map +1 -1
  31. package/dist/engines/build-chart/update-chart/schemas.d.ts +68 -977
  32. package/dist/engines/build-chart/update-chart/schemas.d.ts.map +1 -1
  33. package/dist/engines/build-chart/update-chart/update-chart-data-options.d.ts +1 -1
  34. package/dist/engines/build-chart/update-chart/update-chart-data-options.d.ts.map +1 -1
  35. package/dist/engines/build-chart/update-chart/update-chart-query.d.ts +8 -0
  36. package/dist/engines/build-chart/update-chart/update-chart-query.d.ts.map +1 -0
  37. package/dist/engines/build-chart/update-chart/update-chart-style-options.d.ts +1 -1
  38. package/dist/engines/build-chart/update-chart/update-chart-style-options.d.ts.map +1 -1
  39. package/dist/engines/build-chart/update-chart/update-chart-title.d.ts +1 -1
  40. package/dist/engines/build-chart/update-chart/update-chart-title.d.ts.map +1 -1
  41. package/dist/engines/build-chart/update-chart/update-chart-type.d.ts +1 -1
  42. package/dist/engines/build-chart/update-chart/update-chart-type.d.ts.map +1 -1
  43. package/dist/engines/build-csv-model/build-csv-model-engine.d.ts +1 -1
  44. package/dist/engines/build-csv-model/build-csv-model-engine.d.ts.map +1 -1
  45. package/dist/engines/build-csv-model/rest-build.d.ts.map +1 -1
  46. package/dist/engines/build-csv-model/types.d.ts +18 -70
  47. package/dist/engines/build-csv-model/types.d.ts.map +1 -1
  48. package/dist/engines/build-dashboard/add-dashboard-filters.d.ts.map +1 -1
  49. package/dist/engines/build-dashboard/add-dashboard-widgets.d.ts.map +1 -1
  50. package/dist/engines/build-dashboard/build-dashboard-engine.d.ts +3 -6
  51. package/dist/engines/build-dashboard/build-dashboard-engine.d.ts.map +1 -1
  52. package/dist/engines/build-dashboard/build-dashboard-service.d.ts +3 -3
  53. package/dist/engines/build-dashboard/build-dashboard-service.d.ts.map +1 -1
  54. package/dist/engines/build-dashboard/create-chart-widget.d.ts.map +1 -1
  55. package/dist/engines/build-dashboard/create-dashboard.d.ts.map +1 -1
  56. package/dist/engines/build-dashboard/dashboard-filters/manipulate-dashboard-filters.d.ts +2 -2
  57. package/dist/engines/build-dashboard/dashboard-filters/manipulate-dashboard-filters.d.ts.map +1 -1
  58. package/dist/engines/build-dashboard/load-existing-fusion-dashboard.d.ts.map +1 -1
  59. package/dist/engines/build-dashboard/types.d.ts +46 -90
  60. package/dist/engines/build-dashboard/types.d.ts.map +1 -1
  61. package/dist/engines/build-dashboard/update-chart-widget.d.ts.map +1 -1
  62. package/dist/engines/build-dashboard/update-dashboard.d.ts.map +1 -1
  63. package/dist/engines/build-data-model/build-data-model-engine.d.ts +1 -1
  64. package/dist/engines/build-data-model/build-data-model-engine.d.ts.map +1 -1
  65. package/dist/engines/build-data-model/types.d.ts +59 -316
  66. package/dist/engines/build-data-model/types.d.ts.map +1 -1
  67. package/dist/engines/build-query/build-query-engine.d.ts +1 -1
  68. package/dist/engines/build-query/build-query-engine.d.ts.map +1 -1
  69. package/dist/engines/build-query/types.d.ts +28 -17
  70. package/dist/engines/build-query/types.d.ts.map +1 -1
  71. package/dist/engines/get-dashboards/get-dashboards-engine.d.ts +1 -1
  72. package/dist/engines/get-dashboards/get-dashboards-engine.d.ts.map +1 -1
  73. package/dist/engines/get-dashboards/types.d.ts +7 -2
  74. package/dist/engines/get-dashboards/types.d.ts.map +1 -1
  75. package/dist/engines/get-data-source-fields/get-data-source-fields-engine.d.ts +5 -4
  76. package/dist/engines/get-data-source-fields/get-data-source-fields-engine.d.ts.map +1 -1
  77. package/dist/engines/get-data-source-fields/types.d.ts +10 -8
  78. package/dist/engines/get-data-source-fields/types.d.ts.map +1 -1
  79. package/dist/engines/get-data-sources/get-data-sources-engine.d.ts +1 -1
  80. package/dist/engines/get-data-sources/get-data-sources-engine.d.ts.map +1 -1
  81. package/dist/engines/get-data-sources/types.d.ts +7 -2
  82. package/dist/engines/get-data-sources/types.d.ts.map +1 -1
  83. package/dist/engines/index.d.ts +1 -1
  84. package/dist/engines/index.d.ts.map +1 -1
  85. package/dist/engines/manage-perspectives/manage-perspectives-engine.d.ts +1 -1
  86. package/dist/engines/manage-perspectives/manage-perspectives-engine.d.ts.map +1 -1
  87. package/dist/engines/manage-perspectives/types.d.ts +95 -194
  88. package/dist/engines/manage-perspectives/types.d.ts.map +1 -1
  89. package/dist/engines/recommend-queries/recommend-queries-engine.d.ts +1 -1
  90. package/dist/engines/recommend-queries/recommend-queries-engine.d.ts.map +1 -1
  91. package/dist/engines/recommend-queries/types.d.ts +10 -17
  92. package/dist/engines/recommend-queries/types.d.ts.map +1 -1
  93. package/dist/engines/shared/get-filters-json-for-llm-summary.d.ts +12 -0
  94. package/dist/engines/shared/get-filters-json-for-llm-summary.d.ts.map +1 -0
  95. package/dist/engines/shared/nlq-query-helpers.d.ts +13 -3
  96. package/dist/engines/shared/nlq-query-helpers.d.ts.map +1 -1
  97. package/dist/index.d.ts +16 -3
  98. package/dist/index.d.ts.map +1 -1
  99. package/dist/index.js +26924 -7402
  100. package/dist/index.js.map +1 -1
  101. package/dist/services/dashboards/fusion-dashboards-service.d.ts.map +1 -1
  102. package/dist/services/data-models/ecm-service.d.ts +14 -0
  103. package/dist/services/data-models/ecm-service.d.ts.map +1 -1
  104. package/dist/services/data-sources/data-sources-service.d.ts.map +1 -1
  105. package/dist/services/llm/llm-consumption-service.d.ts.map +1 -1
  106. package/dist/services/llm/llm-models-service.d.ts +15 -0
  107. package/dist/services/llm/llm-models-service.d.ts.map +1 -0
  108. package/dist/services/nlq/nlq-service.d.ts +34 -15
  109. package/dist/services/nlq/nlq-service.d.ts.map +1 -1
  110. package/dist/singleton-clients.d.ts +4 -22
  111. package/dist/singleton-clients.d.ts.map +1 -1
  112. package/dist/utils/abort-signal.d.ts +3 -0
  113. package/dist/utils/abort-signal.d.ts.map +1 -0
  114. package/dist/utils/create-custom-fetch.d.ts +2 -3
  115. package/dist/utils/create-custom-fetch.d.ts.map +1 -1
  116. package/dist/utils/create-serialized-tool-group.d.ts +24 -0
  117. package/dist/utils/create-serialized-tool-group.d.ts.map +1 -0
  118. package/dist/utils/create-stream-completion.d.ts +69 -0
  119. package/dist/utils/create-stream-completion.d.ts.map +1 -0
  120. package/dist/utils/create-structured-completion.d.ts +18 -0
  121. package/dist/utils/create-structured-completion.d.ts.map +1 -0
  122. package/dist/utils/create-tools-completion.d.ts +28 -0
  123. package/dist/utils/create-tools-completion.d.ts.map +1 -0
  124. package/dist/utils/dev-debug.d.ts +8 -0
  125. package/dist/utils/dev-debug.d.ts.map +1 -0
  126. package/dist/utils/llm-client.d.ts +8 -0
  127. package/dist/utils/llm-client.d.ts.map +1 -0
  128. package/dist/utils/llm-provider-options.d.ts +14 -0
  129. package/dist/utils/llm-provider-options.d.ts.map +1 -0
  130. package/dist/utils/zod-utils.d.ts +9 -17
  131. package/dist/utils/zod-utils.d.ts.map +1 -1
  132. package/package.json +20 -18
  133. package/dist/engines/build-chart/create-chart/generate-chart-table.d.ts +0 -9
  134. package/dist/engines/build-chart/create-chart/generate-chart-table.d.ts.map +0 -1
  135. package/dist/services/globals/globals-service.d.ts +0 -2
  136. package/dist/services/globals/globals-service.d.ts.map +0 -1
  137. package/dist/utils/chat-completion-utils.d.ts +0 -55
  138. package/dist/utils/chat-completion-utils.d.ts.map +0 -1
  139. package/dist/utils/openai-client.d.ts +0 -11
  140. package/dist/utils/openai-client.d.ts.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisense/sdk-ai-core",
3
- "version": "0.9.0",
3
+ "version": "0.13.0",
4
4
  "main": "./dist/index.js",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",
@@ -17,38 +17,40 @@
17
17
  "test": "vitest run src",
18
18
  "test:watch": "vitest watch src",
19
19
  "test:coverage": "vitest run --coverage src",
20
- "test-e2e": "NODE_ENV=production vitest run e2e",
20
+ "test-e2e": "NODE_ENV=development vitest run e2e --fileParallelism=false",
21
21
  "format:write": "prettier --write .",
22
22
  "format:check": "prettier --check .",
23
23
  "lint": "eslint ."
24
24
  },
25
25
  "dependencies": {
26
- "@faker-js/faker": "^9.6.0",
26
+ "@ai-sdk/openai": "^3.0.64",
27
+ "@faker-js/faker": "^9.9.0",
27
28
  "@sisense/sdk-data": "^2.0.0",
28
29
  "@sisense/sdk-rest-client": "^2.0.0",
30
+ "ai": "^6.0.188",
29
31
  "deepmerge": "^4.3.1",
30
- "fast-json-patch": "^3.1.1",
31
32
  "fast-deep-equal": "^3.1.3",
32
- "nanoid": "^5.0.9",
33
- "openai": "^4.86.1",
33
+ "fast-json-patch": "^3.1.1",
34
+ "nanoid": "^5.1.11",
34
35
  "partial-json": "^0.1.7",
35
36
  "tslib": "^2.8.1",
36
- "yaml": "^2.8.2",
37
- "zod": "^3.24.1",
38
- "zod-to-json-schema": "^3.24.1"
37
+ "yaml": "^2.8.4",
38
+ "zod": "^3.25.76",
39
+ "zod-to-json-schema": "^3.25.2"
39
40
  },
40
41
  "devDependencies": {
41
- "@sisense/sdk-ui": "^2.0.0",
42
- "@types/lodash-es": "^4.17.6",
43
- "@types/node": "^22.12.0",
44
- "@vitest/coverage-v8": "^3.2.4",
45
- "typescript": "^5.7.2",
46
- "vite": "7.3.2",
47
- "vite-plugin-dts": "^4.5.4",
48
- "vitest": "^3.2.4"
42
+ "@sisense/sdk-ui": "^2.30.0",
43
+ "@types/lodash-es": "^4.17.12",
44
+ "@types/node": "^22.19.17",
45
+ "@vitest/coverage-v8": "^4.1.0",
46
+ "jsdom": "~22.1.0",
47
+ "typescript": "^5.7.3",
48
+ "vite": "~7.3.5",
49
+ "vite-plugin-dts": "~4.5.4",
50
+ "vitest": "~4.1.7"
49
51
  },
50
52
  "peerDependencies": {
51
- "@sisense/sdk-ui": "^2.0.0"
53
+ "@sisense/sdk-ui": "^2.30.0"
52
54
  },
53
55
  "peerDependenciesMeta": {
54
56
  "@sisense/sdk-ui": {
@@ -1,9 +0,0 @@
1
- import { ExtendedChartWidgetProps } from '../types';
2
- import { HttpClient } from '@sisense/sdk-rest-client';
3
- import { QueryResult } from '../../build-query/types';
4
- export type GenerateChartTableResult = {
5
- widgetProps: ExtendedChartWidgetProps;
6
- queryResult?: QueryResult;
7
- };
8
- export declare const generateChartTable: (dataSourceTitle: string, queryPrompt: string, isNlqV3Enabled?: boolean, httpClient?: HttpClient, queryId?: string | null, retrieveQuery?: (queryId: string) => QueryResult | null, nlqCommonFilters?: unknown) => Promise<GenerateChartTableResult>;
9
- //# sourceMappingURL=generate-chart-table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-chart-table.d.ts","sourceRoot":"","sources":["../../../../src/engines/build-chart/create-chart/generate-chart-table.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAMpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAOtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,MAAM,wBAAwB,GAAG;IACtC,WAAW,EAAE,wBAAwB,CAAC;IACtC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC1B,CAAC;AAsIF,eAAO,MAAM,kBAAkB,GAC9B,iBAAiB,MAAM,EACvB,aAAa,MAAM,EACnB,iBAAiB,OAAO,EACxB,aAAa,UAAU,EACvB,UAAU,MAAM,GAAG,IAAI,EACvB,gBAAgB,CAAC,OAAO,EAAE,MAAM,KAAK,WAAW,GAAG,IAAI,EACvD,mBAAmB,OAAO,KACxB,OAAO,CAAC,wBAAwB,CA6BlC,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function loadGlobals(): Promise<unknown>;
2
- //# sourceMappingURL=globals-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"globals-service.d.ts","sourceRoot":"","sources":["../../../src/services/globals/globals-service.ts"],"names":[],"mappings":"AAEA,wBAAsB,WAAW,qBAIhC"}
@@ -1,55 +0,0 @@
1
- import { z } from 'zod';
2
- import { OpenAI } from 'openai';
3
- type StructuredCompletionParams<T> = {
4
- systemPrompt: string;
5
- userPrompt: string;
6
- responseFormat: {
7
- type: 'json_schema';
8
- schema: z.ZodSchema<T>;
9
- name: string;
10
- } | {
11
- type: 'json_object';
12
- };
13
- model?: string;
14
- temperature?: number;
15
- sessionId?: string | null;
16
- openAIClient?: OpenAI;
17
- };
18
- /**
19
- * Creates a structured completion using OpenAI with consistent configuration
20
- * across all tools.
21
- */
22
- export declare function createStructuredCompletion<T>(params: StructuredCompletionParams<T>): Promise<T>;
23
- type ToolsCompletionParams = {
24
- systemPrompt: string;
25
- userPrompt: string;
26
- tools: any[];
27
- model?: string;
28
- temperature?: number;
29
- toolChoice?: 'auto' | 'none' | {
30
- type: 'function';
31
- function: {
32
- name: string;
33
- };
34
- };
35
- openAIClient?: OpenAI;
36
- };
37
- type GenericMessage = {
38
- role: string;
39
- content?: string | any;
40
- tool_call_id?: string;
41
- [key: string]: any;
42
- };
43
- type ToolsCompletionResult = {
44
- toolMessages: GenericMessage[];
45
- assistantMessages: string[];
46
- combinedMessage: string;
47
- isError: boolean;
48
- };
49
- /**
50
- * Creates a tools completion using OpenAI with streaming support.
51
- * Returns captured messages and a combined message string ready for use.
52
- */
53
- export declare function createToolsCompletion(params: ToolsCompletionParams): Promise<ToolsCompletionResult>;
54
- export {};
55
- //# sourceMappingURL=chat-completion-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-completion-utils.d.ts","sourceRoot":"","sources":["../../src/utils/chat-completion-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKrC,KAAK,0BAA0B,CAAC,CAAC,IAAI;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EACX;QAAE,IAAI,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAC7D;QAAE,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,0BAA0B,CAAC,CAAC,EACjD,MAAM,EAAE,0BAA0B,CAAC,CAAC,CAAC,GACnC,OAAO,CAAC,CAAC,CAAC,CA0DZ;AAED,KAAK,qBAAqB,GAAG;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EACR,MAAM,GACN,MAAM,GACN;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACpD,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,KAAK,cAAc,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC5B,YAAY,EAAE,cAAc,EAAE,CAAC;IAC/B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,qBAAqB,CAC1C,MAAM,EAAE,qBAAqB,GAC3B,OAAO,CAAC,qBAAqB,CAAC,CA8HhC"}
@@ -1,11 +0,0 @@
1
- import { HttpClient } from '@sisense/sdk-rest-client';
2
- import { default as OpenAI } from 'openai';
3
- /**
4
- * Factory function to create an OpenAI client with custom configuration
5
- * @param baseURL - The base URL for the OpenAI API endpoint
6
- * @param fetchFn - Custom fetch function (e.g., with authentication headers)
7
- * @returns Configured OpenAI client instance
8
- */
9
- export declare function createOpenAIClientHelper(baseURL: string, fetchFn: typeof fetch): OpenAI;
10
- export declare function createOpenAIClient(httpClient: HttpClient): OpenAI;
11
- //# sourceMappingURL=openai-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai-client.d.ts","sourceRoot":"","sources":["../../src/utils/openai-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAM5B;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACvC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,KAAK,GACnB,MAAM,CAQR;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAGjE"}