@lightdash/common 0.2104.7 → 0.2104.9
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/dist/cjs/.tsbuildinfo +1 -0
- package/dist/cjs/authorization/index.d.ts +1 -4
- package/dist/cjs/authorization/index.d.ts.map +1 -1
- package/dist/cjs/authorization/index.js +0 -4
- package/dist/cjs/authorization/index.js.map +1 -1
- package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +8 -8
- package/dist/cjs/ee/AiAgent/index.d.ts +2 -2
- package/dist/cjs/ee/AiAgent/schemas/parser.d.ts +24 -24
- package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +96 -96
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +48 -48
- package/dist/cjs/ee/AiAgent/utils.d.ts +8 -8
- package/dist/cjs/index.d.ts +23 -449
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +21 -55
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/pivot/index.d.ts +1 -0
- package/dist/cjs/pivot/index.d.ts.map +1 -1
- package/dist/cjs/pivot/index.js +1 -0
- package/dist/cjs/pivot/index.js.map +1 -1
- package/dist/cjs/pivot/pivotConfig.d.ts +7 -0
- package/dist/cjs/pivot/pivotConfig.d.ts.map +1 -0
- package/dist/cjs/pivot/pivotConfig.js +32 -0
- package/dist/cjs/pivot/pivotConfig.js.map +1 -0
- package/dist/cjs/types/api.d.ts +447 -0
- package/dist/cjs/types/api.d.ts.map +1 -1
- package/dist/cjs/types/api.js +50 -1
- package/dist/cjs/types/api.js.map +1 -1
- package/dist/cjs/types/auth.d.ts +2 -1
- package/dist/cjs/types/auth.d.ts.map +1 -1
- package/dist/cjs/types/auth.js +4 -4
- package/dist/cjs/types/auth.js.map +1 -1
- package/dist/cjs/types/changeset.d.ts +10 -10
- package/dist/cjs/types/pivot.d.ts +0 -2
- package/dist/cjs/types/pivot.d.ts.map +1 -1
- package/dist/cjs/types/pivot.js +0 -29
- package/dist/cjs/types/pivot.js.map +1 -1
- package/dist/cjs/types/resourceViewItem.d.ts +1 -1
- package/dist/esm/.tsbuildinfo +1 -0
- package/dist/esm/authorization/index.d.ts +1 -4
- package/dist/esm/authorization/index.d.ts.map +1 -1
- package/dist/esm/authorization/index.js +0 -4
- package/dist/esm/authorization/index.js.map +1 -1
- package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +8 -8
- package/dist/esm/ee/AiAgent/index.d.ts +2 -2
- package/dist/esm/ee/AiAgent/schemas/parser.d.ts +24 -24
- package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +96 -96
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +48 -48
- package/dist/esm/ee/AiAgent/utils.d.ts +8 -8
- package/dist/esm/index.d.ts +23 -449
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +16 -50
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/pivot/index.d.ts +1 -0
- package/dist/esm/pivot/index.d.ts.map +1 -1
- package/dist/esm/pivot/index.js +1 -0
- package/dist/esm/pivot/index.js.map +1 -1
- package/dist/esm/pivot/pivotConfig.d.ts +7 -0
- package/dist/esm/pivot/pivotConfig.d.ts.map +1 -0
- package/dist/esm/pivot/pivotConfig.js +28 -0
- package/dist/esm/pivot/pivotConfig.js.map +1 -0
- package/dist/esm/types/api.d.ts +447 -0
- package/dist/esm/types/api.d.ts.map +1 -1
- package/dist/esm/types/api.js +46 -0
- package/dist/esm/types/api.js.map +1 -1
- package/dist/esm/types/auth.d.ts +2 -1
- package/dist/esm/types/auth.d.ts.map +1 -1
- package/dist/esm/types/auth.js +2 -2
- package/dist/esm/types/auth.js.map +1 -1
- package/dist/esm/types/changeset.d.ts +10 -10
- package/dist/esm/types/pivot.d.ts +0 -2
- package/dist/esm/types/pivot.d.ts.map +1 -1
- package/dist/esm/types/pivot.js +1 -27
- package/dist/esm/types/pivot.js.map +1 -1
- package/dist/esm/types/resourceViewItem.d.ts +1 -1
- package/dist/types/.tsbuildinfo +1 -0
- package/dist/types/authorization/buildAccountHelpers.js +11 -0
- package/dist/types/authorization/buildAccountHelpers.js.map +1 -0
- package/dist/types/authorization/index.d.ts +1 -4
- package/dist/types/authorization/index.d.ts.map +1 -1
- package/dist/types/authorization/index.js +62 -0
- package/dist/types/authorization/index.js.map +1 -0
- package/dist/types/authorization/index.mock.js +42 -0
- package/dist/types/authorization/index.mock.js.map +1 -0
- package/dist/types/authorization/index.test.js +220 -0
- package/dist/types/authorization/index.test.js.map +1 -0
- package/dist/types/authorization/jwtAbility.js +77 -0
- package/dist/types/authorization/jwtAbility.js.map +1 -0
- package/dist/types/authorization/jwtAbility.test.js +416 -0
- package/dist/types/authorization/jwtAbility.test.js.map +1 -0
- package/dist/types/authorization/organizationMemberAbility.js +318 -0
- package/dist/types/authorization/organizationMemberAbility.js.map +1 -0
- package/dist/types/authorization/organizationMemberAbility.mock.js +34 -0
- package/dist/types/authorization/organizationMemberAbility.mock.js.map +1 -0
- package/dist/types/authorization/organizationMemberAbility.test.js +1265 -0
- package/dist/types/authorization/organizationMemberAbility.test.js.map +1 -0
- package/dist/types/authorization/parseAccount.js +28 -0
- package/dist/types/authorization/parseAccount.js.map +1 -0
- package/dist/types/authorization/parseScopes.js +31 -0
- package/dist/types/authorization/parseScopes.js.map +1 -0
- package/dist/types/authorization/parseScopes.test.js +102 -0
- package/dist/types/authorization/parseScopes.test.js.map +1 -0
- package/dist/types/authorization/projectMemberAbility.js +239 -0
- package/dist/types/authorization/projectMemberAbility.js.map +1 -0
- package/dist/types/authorization/projectMemberAbility.mock.js +27 -0
- package/dist/types/authorization/projectMemberAbility.mock.js.map +1 -0
- package/dist/types/authorization/projectMemberAbility.test.js +1031 -0
- package/dist/types/authorization/projectMemberAbility.test.js.map +1 -0
- package/dist/types/authorization/roleToScopeMapping.js +150 -0
- package/dist/types/authorization/roleToScopeMapping.js.map +1 -0
- package/dist/types/authorization/roleToScopeMapping.test.js +561 -0
- package/dist/types/authorization/roleToScopeMapping.test.js.map +1 -0
- package/dist/types/authorization/roleToScopeMapping.testUtils.js +319 -0
- package/dist/types/authorization/roleToScopeMapping.testUtils.js.map +1 -0
- package/dist/types/authorization/roleToScopeParity.test.js +194 -0
- package/dist/types/authorization/roleToScopeParity.test.js.map +1 -0
- package/dist/types/authorization/scopeAbilityBuilder.js +57 -0
- package/dist/types/authorization/scopeAbilityBuilder.js.map +1 -0
- package/dist/types/authorization/scopeAbilityBuilder.test.js +1348 -0
- package/dist/types/authorization/scopeAbilityBuilder.test.js.map +1 -0
- package/dist/types/authorization/scopes.js +613 -0
- package/dist/types/authorization/scopes.js.map +1 -0
- package/dist/types/authorization/serviceAccountAbility.js +303 -0
- package/dist/types/authorization/serviceAccountAbility.js.map +1 -0
- package/dist/types/authorization/types.js +2 -0
- package/dist/types/authorization/types.js.map +1 -0
- package/dist/types/compiler/exploreCompiler.js +462 -0
- package/dist/types/compiler/exploreCompiler.js.map +1 -0
- package/dist/types/compiler/exploreCompiler.mock.js +2016 -0
- package/dist/types/compiler/exploreCompiler.mock.js.map +1 -0
- package/dist/types/compiler/exploreCompiler.test.js +679 -0
- package/dist/types/compiler/exploreCompiler.test.js.map +1 -0
- package/dist/types/compiler/fieldSetExpander.js +119 -0
- package/dist/types/compiler/fieldSetExpander.js.map +1 -0
- package/dist/types/compiler/fieldSetExpander.test.js +184 -0
- package/dist/types/compiler/fieldSetExpander.test.js.map +1 -0
- package/dist/types/compiler/filtersCompiler.js +337 -0
- package/dist/types/compiler/filtersCompiler.js.map +1 -0
- package/dist/types/compiler/filtersCompiler.mock.js +496 -0
- package/dist/types/compiler/filtersCompiler.mock.js.map +1 -0
- package/dist/types/compiler/filtersCompiler.test.js +570 -0
- package/dist/types/compiler/filtersCompiler.test.js.map +1 -0
- package/dist/types/compiler/lightdashProjectConfig.js +37 -0
- package/dist/types/compiler/lightdashProjectConfig.js.map +1 -0
- package/dist/types/compiler/parameters.js +75 -0
- package/dist/types/compiler/parameters.js.map +1 -0
- package/dist/types/compiler/parameters.test.js +216 -0
- package/dist/types/compiler/parameters.test.js.map +1 -0
- package/dist/types/compiler/translator.js +707 -0
- package/dist/types/compiler/translator.js.map +1 -0
- package/dist/types/compiler/translator.mock.js +1901 -0
- package/dist/types/compiler/translator.mock.js.map +1 -0
- package/dist/types/compiler/translator.test.js +323 -0
- package/dist/types/compiler/translator.test.js.map +1 -0
- package/dist/types/constants/pivot.js +7 -0
- package/dist/types/constants/pivot.js.map +1 -0
- package/dist/types/constants/sessionStorageKeys.js +6 -0
- package/dist/types/constants/sessionStorageKeys.js.map +1 -0
- package/dist/types/constants/sqlRunner.js +3 -0
- package/dist/types/constants/sqlRunner.js.map +1 -0
- package/dist/types/dbt/DbtSchemaEditor/DbtSchemaEditor.js +285 -0
- package/dist/types/dbt/DbtSchemaEditor/DbtSchemaEditor.js.map +1 -0
- package/dist/types/dbt/DbtSchemaEditor/DbtSchemaEditor.mock.js +224 -0
- package/dist/types/dbt/DbtSchemaEditor/DbtSchemaEditor.mock.js.map +1 -0
- package/dist/types/dbt/DbtSchemaEditor/DbtSchemaEditor.test.js +129 -0
- package/dist/types/dbt/DbtSchemaEditor/DbtSchemaEditor.test.js.map +1 -0
- package/dist/types/dbt/schemas/lightdashMetadata.json +385 -0
- package/dist/types/dbt/schemas/lightdashV10.json +72 -0
- package/dist/types/dbt/schemas/lightdashV11.json +72 -0
- package/dist/types/dbt/schemas/lightdashV12.json +63 -0
- package/dist/types/dbt/schemas/lightdashV7.json +72 -0
- package/dist/types/dbt/schemas/lightdashV8.json +76 -0
- package/dist/types/dbt/schemas/lightdashV9.json +72 -0
- package/dist/types/dbt/schemas/manifestV10.json +5545 -0
- package/dist/types/dbt/schemas/manifestV11.json +6041 -0
- package/dist/types/dbt/schemas/manifestV12.json +22567 -0
- package/dist/types/dbt/schemas/manifestV7.json +6481 -0
- package/dist/types/dbt/schemas/manifestV8.json +4358 -0
- package/dist/types/dbt/schemas/manifestV9.json +4879 -0
- package/dist/types/dbt/validation.js +67 -0
- package/dist/types/dbt/validation.js.map +1 -0
- package/dist/types/ee/AiAgent/adminTypes.js +2 -0
- package/dist/types/ee/AiAgent/adminTypes.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/shared/formatFieldLabel.js +10 -0
- package/dist/types/ee/AiAgent/chartConfig/shared/formatFieldLabel.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/generateBarVizConfigTool/getVerticalBarChartEchartsConfig.js +60 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/generateBarVizConfigTool/getVerticalBarChartEchartsConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/generateTimeSeriesVizConfigTool/getTimeSeriesChartEchartsConfig.js +60 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/generateTimeSeriesVizConfigTool/getTimeSeriesChartEchartsConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/getSlackAiEchartsConfig.js +33 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/getSlackAiEchartsConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/index.js +2 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/index.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/getRunQueryEchartsConfig.js +43 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/getRunQueryEchartsConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.js +98 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/funnel.js +38 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/funnel.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/horizontalBar.js +65 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/horizontalBar.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.js +105 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/pie.js +34 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/pie.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/scatter.js +66 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/scatter.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/shared/getCommonEChartsConfig.js +104 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/shared/getCommonEChartsConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/types.js +2 -0
- package/dist/types/ee/AiAgent/chartConfig/slack/types.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/generateBarVizConfigTool/getVerticalBarChartConfig.js +65 -0
- package/dist/types/ee/AiAgent/chartConfig/web/generateBarVizConfigTool/getVerticalBarChartConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/generateTableVizConfigTool/getTableChartConfig.js +5 -0
- package/dist/types/ee/AiAgent/chartConfig/web/generateTableVizConfigTool/getTableChartConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/generateTimeSeriesVizConfigTool/getTimeSeriesChartConfig.js +63 -0
- package/dist/types/ee/AiAgent/chartConfig/web/generateTimeSeriesVizConfigTool/getTimeSeriesChartConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +8 -8
- package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.js +51 -0
- package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/index.js +6 -0
- package/dist/types/ee/AiAgent/chartConfig/web/index.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/getRunQueryChartConfig.js +73 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/getRunQueryChartConfig.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.js +91 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/funnel.js +17 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/funnel.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/horizontalBar.js +52 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/horizontalBar.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.js +96 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/pie.js +15 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/pie.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/scatter.js +66 -0
- package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/scatter.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/canRenderAsChart.js +24 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/canRenderAsChart.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/formatPivotValueLabel.js +15 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/formatPivotValueLabel.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/getAvailableChartTypes.js +11 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/getAvailableChartTypes.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/getGroupByDimensions.js +15 -0
- package/dist/types/ee/AiAgent/chartConfig/web/shared/getGroupByDimensions.js.map +1 -0
- package/dist/types/ee/AiAgent/chartConfig/web/types.js +2 -0
- package/dist/types/ee/AiAgent/chartConfig/web/types.js.map +1 -0
- package/dist/types/ee/AiAgent/constants.js +2 -0
- package/dist/types/ee/AiAgent/constants.js.map +1 -0
- package/dist/types/ee/AiAgent/filterExploreByTags.js +94 -0
- package/dist/types/ee/AiAgent/filterExploreByTags.js.map +1 -0
- package/dist/types/ee/AiAgent/filterExploreByTags.test.js +634 -0
- package/dist/types/ee/AiAgent/filterExploreByTags.test.js.map +1 -0
- package/dist/types/ee/AiAgent/followUpTools.js +33 -0
- package/dist/types/ee/AiAgent/followUpTools.js.map +1 -0
- package/dist/types/ee/AiAgent/index.d.ts +2 -2
- package/dist/types/ee/AiAgent/index.js +43 -0
- package/dist/types/ee/AiAgent/index.js.map +1 -0
- package/dist/types/ee/AiAgent/requestTypes.js +2 -0
- package/dist/types/ee/AiAgent/requestTypes.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/customMetrics.js +50 -0
- package/dist/types/ee/AiAgent/schemas/customMetrics.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/fieldId.js +11 -0
- package/dist/types/ee/AiAgent/schemas/fieldId.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/filters/booleanFilters.js +29 -0
- package/dist/types/ee/AiAgent/schemas/filters/booleanFilters.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/filters/dateFilters.js +84 -0
- package/dist/types/ee/AiAgent/schemas/filters/dateFilters.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/filters/index.js +98 -0
- package/dist/types/ee/AiAgent/schemas/filters/index.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/filters/numberFilters.js +53 -0
- package/dist/types/ee/AiAgent/schemas/filters/numberFilters.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/filters/stringFilters.js +33 -0
- package/dist/types/ee/AiAgent/schemas/filters/stringFilters.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/index.js +9 -0
- package/dist/types/ee/AiAgent/schemas/index.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/outputMetadata.js +5 -0
- package/dist/types/ee/AiAgent/schemas/outputMetadata.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/parser.d.ts +24 -24
- package/dist/types/ee/AiAgent/schemas/parser.js +43 -0
- package/dist/types/ee/AiAgent/schemas/parser.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/sortField.js +14 -0
- package/dist/types/ee/AiAgent/schemas/sortField.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcBaseSchemas.js +28 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcBaseSchemas.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcPercentChangeFromPrevious.js +14 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcPercentChangeFromPrevious.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcPercentOfColumnTotal.js +14 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcPercentOfColumnTotal.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcPercentOfPreviousValue.js +14 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcPercentOfPreviousValue.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcRankInColumn.js +10 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcRankInColumn.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcRunningTotal.js +10 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcRunningTotal.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcWindowFunction.js +105 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcWindowFunction.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcs.js +168 -0
- package/dist/types/ee/AiAgent/schemas/tableCalcs/tableCalcs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/toolSchemaBuilder.js +37 -0
- package/dist/types/ee/AiAgent/schemas/toolSchemaBuilder.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/index.js +16 -0
- package/dist/types/ee/AiAgent/schemas/tools/index.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardArgs.js +103 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +96 -96
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.js +50 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindChartsArgs.js +34 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindChartsArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindContentArgs.js +33 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindContentArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindDashboardsArgs.js +36 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindDashboardsArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindExploresArgs.js +45 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindExploresArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindFieldsArgs.js +34 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolFindFieldsArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolImproveContextArgs.js +60 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolImproveContextArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolProposeChangeArgs.js +157 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolProposeChangeArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +41 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +48 -48
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +151 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolSearchFieldValuesArgs.js +46 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolSearchFieldValuesArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.js +53 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +58 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +53 -0
- package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/visualizationMetadata.js +9 -0
- package/dist/types/ee/AiAgent/schemas/visualizationMetadata.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/index.js +58 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/index.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/tableViz.js +38 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/tableViz.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/timeSeriesViz.js +63 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/timeSeriesViz.js.map +1 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/verticalBarViz.js +68 -0
- package/dist/types/ee/AiAgent/schemas/visualizations/verticalBarViz.js.map +1 -0
- package/dist/types/ee/AiAgent/types.js +12 -0
- package/dist/types/ee/AiAgent/types.js.map +1 -0
- package/dist/types/ee/AiAgent/utils.d.ts +8 -8
- package/dist/types/ee/AiAgent/utils.js +82 -0
- package/dist/types/ee/AiAgent/utils.js.map +1 -0
- package/dist/types/ee/AiAgent/validators.js +10 -0
- package/dist/types/ee/AiAgent/validators.js.map +1 -0
- package/dist/types/ee/commercialFeatureFlags.js +10 -0
- package/dist/types/ee/commercialFeatureFlags.js.map +1 -0
- package/dist/types/ee/embed/index.js +90 -0
- package/dist/types/ee/embed/index.js.map +1 -0
- package/dist/types/ee/index.js +19 -0
- package/dist/types/ee/index.js.map +1 -0
- package/dist/types/ee/scim/errors.js +22 -0
- package/dist/types/ee/scim/errors.js.map +1 -0
- package/dist/types/ee/scim/types.js +2 -0
- package/dist/types/ee/scim/types.js.map +1 -0
- package/dist/types/ee/serviceAccounts/types.js +8 -0
- package/dist/types/ee/serviceAccounts/types.js.map +1 -0
- package/dist/types/index.d.ts +23 -449
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +652 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/index.mock.js +44 -0
- package/dist/types/index.mock.js.map +1 -0
- package/dist/types/index.test.js +123 -0
- package/dist/types/index.test.js.map +1 -0
- package/dist/types/pivot/derivePivotConfigFromChart.js +206 -0
- package/dist/types/pivot/derivePivotConfigFromChart.js.map +1 -0
- package/dist/types/pivot/derivePivotConfigFromChart.mock.js +112 -0
- package/dist/types/pivot/derivePivotConfigFromChart.mock.js.map +1 -0
- package/dist/types/pivot/derivePivotConfigFromChart.test.js +418 -0
- package/dist/types/pivot/derivePivotConfigFromChart.test.js.map +1 -0
- package/dist/types/pivot/index.d.ts +1 -0
- package/dist/types/pivot/index.d.ts.map +1 -1
- package/dist/types/pivot/index.js +5 -0
- package/dist/types/pivot/index.js.map +1 -0
- package/dist/types/pivot/pivotConfig.d.ts +7 -0
- package/dist/types/pivot/pivotConfig.d.ts.map +1 -0
- package/dist/types/pivot/pivotConfig.js +28 -0
- package/dist/types/pivot/pivotConfig.js.map +1 -0
- package/dist/types/pivot/pivotQueryResults.js +1034 -0
- package/dist/types/pivot/pivotQueryResults.js.map +1 -0
- package/dist/types/pivot/pivotQueryResults.mock.js +2412 -0
- package/dist/types/pivot/pivotQueryResults.mock.js.map +1 -0
- package/dist/types/pivot/pivotQueryResults.test.js +1222 -0
- package/dist/types/pivot/pivotQueryResults.test.js.map +1 -0
- package/dist/types/pivot/utils.js +14 -0
- package/dist/types/pivot/utils.js.map +1 -0
- package/dist/types/schemas/json/chart-as-code-1.0.json +436 -0
- package/dist/types/schemas/json/dashboard-as-code-1.0.json +349 -0
- package/dist/types/schemas/json/lightdash-dbt-2.0.json +1417 -0
- package/dist/types/schemas/json/lightdash-project-config-1.0.json +138 -0
- package/dist/types/templating/template.js +30 -0
- package/dist/types/templating/template.js.map +1 -0
- package/dist/types/templating/template.mock.js +45 -0
- package/dist/types/templating/template.mock.js.map +1 -0
- package/dist/types/templating/template.test.js +21 -0
- package/dist/types/templating/template.test.js.map +1 -0
- package/dist/types/types/SshKeyPair.js +2 -0
- package/dist/types/types/SshKeyPair.js.map +1 -0
- package/dist/types/types/account.js +2 -0
- package/dist/types/types/account.js.map +1 -0
- package/dist/types/types/analytics.js +29 -0
- package/dist/types/types/analytics.js.map +1 -0
- package/dist/types/types/any.js +2 -0
- package/dist/types/types/any.js.map +1 -0
- package/dist/types/types/api/comments.js +2 -0
- package/dist/types/types/api/comments.js.map +1 -0
- package/dist/types/types/api/email.js +2 -0
- package/dist/types/types/api/email.js.map +1 -0
- package/dist/types/types/api/errors.js +2 -0
- package/dist/types/types/api/errors.js.map +1 -0
- package/dist/types/types/api/notifications.js +5 -0
- package/dist/types/types/api/notifications.js.map +1 -0
- package/dist/types/types/api/paginatedQuery.js +3 -0
- package/dist/types/types/api/paginatedQuery.js.map +1 -0
- package/dist/types/types/api/parameters.js +2 -0
- package/dist/types/types/api/parameters.js.map +1 -0
- package/dist/types/types/api/share.js +2 -0
- package/dist/types/types/api/share.js.map +1 -0
- package/dist/types/types/api/sort.js +2 -0
- package/dist/types/types/api/sort.js.map +1 -0
- package/dist/types/types/api/spotlight.js +2 -0
- package/dist/types/types/api/spotlight.js.map +1 -0
- package/dist/types/types/api/success.js +2 -0
- package/dist/types/types/api/success.js.map +1 -0
- package/dist/types/types/api/uuid.js +2 -0
- package/dist/types/types/api/uuid.js.map +1 -0
- package/dist/types/types/api.d.ts +447 -0
- package/dist/types/types/api.d.ts.map +1 -1
- package/dist/types/types/api.js +57 -0
- package/dist/types/types/api.js.map +1 -0
- package/dist/types/types/applyDimensionOverrides.test.js +338 -0
- package/dist/types/types/applyDimensionOverrides.test.js.map +1 -0
- package/dist/types/types/auth.d.ts +2 -1
- package/dist/types/types/auth.d.ts.map +1 -1
- package/dist/types/types/auth.js +42 -0
- package/dist/types/types/auth.js.map +1 -0
- package/dist/types/types/bigQuerySSO.js +2 -0
- package/dist/types/types/bigQuerySSO.js.map +1 -0
- package/dist/types/types/catalog.js +50 -0
- package/dist/types/types/catalog.js.map +1 -0
- package/dist/types/types/changeset.d.ts +10 -10
- package/dist/types/types/changeset.js +72 -0
- package/dist/types/types/changeset.js.map +1 -0
- package/dist/types/types/coder.js +2 -0
- package/dist/types/types/coder.js.map +1 -0
- package/dist/types/types/comments.js +2 -0
- package/dist/types/types/comments.js.map +1 -0
- package/dist/types/types/conditionalFormatting.js +25 -0
- package/dist/types/types/conditionalFormatting.js.map +1 -0
- package/dist/types/types/content.js +19 -0
- package/dist/types/types/content.js.map +1 -0
- package/dist/types/types/csv.js +2 -0
- package/dist/types/types/csv.js.map +1 -0
- package/dist/types/types/dashboard.js +46 -0
- package/dist/types/types/dashboard.js.map +1 -0
- package/dist/types/types/dbt.js +262 -0
- package/dist/types/types/dbt.js.map +1 -0
- package/dist/types/types/dbtFromSchema.js +2 -0
- package/dist/types/types/dbtFromSchema.js.map +1 -0
- package/dist/types/types/deepPartial.js +7 -0
- package/dist/types/types/deepPartial.js.map +1 -0
- package/dist/types/types/downloadFile.js +9 -0
- package/dist/types/types/downloadFile.js.map +1 -0
- package/dist/types/types/email.js +2 -0
- package/dist/types/types/email.js.map +1 -0
- package/dist/types/types/errors.js +496 -0
- package/dist/types/types/errors.js.map +1 -0
- package/dist/types/types/explore.js +24 -0
- package/dist/types/types/explore.js.map +1 -0
- package/dist/types/types/featureFlags.js +62 -0
- package/dist/types/types/featureFlags.js.map +1 -0
- package/dist/types/types/field.js +473 -0
- package/dist/types/types/field.js.map +1 -0
- package/dist/types/types/field.test.js +90 -0
- package/dist/types/types/field.test.js.map +1 -0
- package/dist/types/types/fieldMatch.js +2 -0
- package/dist/types/types/fieldMatch.js.map +1 -0
- package/dist/types/types/filter.js +287 -0
- package/dist/types/types/filter.js.map +1 -0
- package/dist/types/types/filter.test.js +372 -0
- package/dist/types/types/filter.test.js.map +1 -0
- package/dist/types/types/filterGrammar.js +358 -0
- package/dist/types/types/filterGrammar.js.map +1 -0
- package/dist/types/types/filterGrammar.test.js +549 -0
- package/dist/types/types/filterGrammar.test.js.map +1 -0
- package/dist/types/types/filterGrammarConversion.js +94 -0
- package/dist/types/types/filterGrammarConversion.js.map +1 -0
- package/dist/types/types/filterGrammarConversion.test.js +260 -0
- package/dist/types/types/filterGrammarConversion.test.js.map +1 -0
- package/dist/types/types/gdrive.js +2 -0
- package/dist/types/types/gdrive.js.map +1 -0
- package/dist/types/types/gitIntegration.js +2 -0
- package/dist/types/types/gitIntegration.js.map +1 -0
- package/dist/types/types/groups.js +4 -0
- package/dist/types/types/groups.js.map +1 -0
- package/dist/types/types/job.js +67 -0
- package/dist/types/types/job.js.map +1 -0
- package/dist/types/types/knex-paginate.js +2 -0
- package/dist/types/types/knex-paginate.js.map +1 -0
- package/dist/types/types/lightdashProjectConfig.js +4 -0
- package/dist/types/types/lightdashProjectConfig.js.map +1 -0
- package/dist/types/types/metricQuery.js +20 -0
- package/dist/types/types/metricQuery.js.map +1 -0
- package/dist/types/types/metricsExplorer.js +12 -0
- package/dist/types/types/metricsExplorer.js.map +1 -0
- package/dist/types/types/notifications.js +2 -0
- package/dist/types/types/notifications.js.map +1 -0
- package/dist/types/types/oauth.js +2 -0
- package/dist/types/types/oauth.js.map +1 -0
- package/dist/types/types/openIdIdentity.js +12 -0
- package/dist/types/types/openIdIdentity.js.map +1 -0
- package/dist/types/types/organization.js +20 -0
- package/dist/types/types/organization.js.map +1 -0
- package/dist/types/types/organizationMemberProfile.js +30 -0
- package/dist/types/types/organizationMemberProfile.js.map +1 -0
- package/dist/types/types/organizationWarehouseCredentials.js +2 -0
- package/dist/types/types/organizationWarehouseCredentials.js.map +1 -0
- package/dist/types/types/paginateResults.js +2 -0
- package/dist/types/types/paginateResults.js.map +1 -0
- package/dist/types/types/parameters.js +2 -0
- package/dist/types/types/parameters.js.map +1 -0
- package/dist/types/types/personalAccessToken.js +2 -0
- package/dist/types/types/personalAccessToken.js.map +1 -0
- package/dist/types/types/pinning.js +5 -0
- package/dist/types/types/pinning.js.map +1 -0
- package/dist/types/types/pivot.d.ts +0 -2
- package/dist/types/types/pivot.d.ts.map +1 -1
- package/dist/types/types/pivot.js +2 -0
- package/dist/types/types/pivot.js.map +1 -0
- package/dist/types/types/projectGroupAccess.js +2 -0
- package/dist/types/types/projectGroupAccess.js.map +1 -0
- package/dist/types/types/projectMemberProfile.js +2 -0
- package/dist/types/types/projectMemberProfile.js.map +1 -0
- package/dist/types/types/projectMemberRole.js +30 -0
- package/dist/types/types/projectMemberRole.js.map +1 -0
- package/dist/types/types/projects.js +149 -0
- package/dist/types/types/projects.js.map +1 -0
- package/dist/types/types/promotion.js +8 -0
- package/dist/types/types/promotion.js.map +1 -0
- package/dist/types/types/queryHistory.js +8 -0
- package/dist/types/types/queryHistory.js.map +1 -0
- package/dist/types/types/rename.js +6 -0
- package/dist/types/types/rename.js.map +1 -0
- package/dist/types/types/resourceViewItem.d.ts +1 -1
- package/dist/types/types/resourceViewItem.js +103 -0
- package/dist/types/types/resourceViewItem.js.map +1 -0
- package/dist/types/types/results.js +51 -0
- package/dist/types/types/results.js.map +1 -0
- package/dist/types/types/roles.js +2 -0
- package/dist/types/types/roles.js.map +1 -0
- package/dist/types/types/savedCharts.js +225 -0
- package/dist/types/types/savedCharts.js.map +1 -0
- package/dist/types/types/scheduler.js +87 -0
- package/dist/types/types/scheduler.js.map +1 -0
- package/dist/types/types/schedulerLog.js +2 -0
- package/dist/types/types/schedulerLog.js.map +1 -0
- package/dist/types/types/schedulerTaskList.js +31 -0
- package/dist/types/types/schedulerTaskList.js.map +1 -0
- package/dist/types/types/scopes.js +14 -0
- package/dist/types/types/scopes.js.map +1 -0
- package/dist/types/types/search.js +53 -0
- package/dist/types/types/search.js.map +1 -0
- package/dist/types/types/share.js +2 -0
- package/dist/types/types/share.js.map +1 -0
- package/dist/types/types/slack.js +2 -0
- package/dist/types/types/slack.js.map +1 -0
- package/dist/types/types/slackSettings.js +2 -0
- package/dist/types/types/slackSettings.js.map +1 -0
- package/dist/types/types/space.js +7 -0
- package/dist/types/types/space.js.map +1 -0
- package/dist/types/types/spotlightTableConfig.js +17 -0
- package/dist/types/types/spotlightTableConfig.js.map +1 -0
- package/dist/types/types/sqlRunner.js +41 -0
- package/dist/types/types/sqlRunner.js.map +1 -0
- package/dist/types/types/table.js +6 -0
- package/dist/types/types/table.js.map +1 -0
- package/dist/types/types/tags.js +2 -0
- package/dist/types/types/tags.js.map +1 -0
- package/dist/types/types/timeFrames.js +42 -0
- package/dist/types/types/timeFrames.js.map +1 -0
- package/dist/types/types/timezone.js +33 -0
- package/dist/types/types/timezone.js.map +1 -0
- package/dist/types/types/user.js +23 -0
- package/dist/types/types/user.js.map +1 -0
- package/dist/types/types/userAttributes.js +2 -0
- package/dist/types/types/userAttributes.js.map +1 -0
- package/dist/types/types/userWarehouseCredentials.js +2 -0
- package/dist/types/types/userWarehouseCredentials.js.map +1 -0
- package/dist/types/types/validation.js +29 -0
- package/dist/types/types/validation.js.map +1 -0
- package/dist/types/types/warehouse.js +6 -0
- package/dist/types/types/warehouse.js.map +1 -0
- package/dist/types/types/yamlSchema.js +2 -0
- package/dist/types/types/yamlSchema.js.map +1 -0
- package/dist/types/utils/accessors.js +27 -0
- package/dist/types/utils/accessors.js.map +1 -0
- package/dist/types/utils/accessors.test.js +45 -0
- package/dist/types/utils/accessors.test.js.map +1 -0
- package/dist/types/utils/additionalMetrics.js +54 -0
- package/dist/types/utils/additionalMetrics.js.map +1 -0
- package/dist/types/utils/api.js +5 -0
- package/dist/types/utils/api.js.map +1 -0
- package/dist/types/utils/assertUnreachable.js +10 -0
- package/dist/types/utils/assertUnreachable.js.map +1 -0
- package/dist/types/utils/booleanConverter.js +27 -0
- package/dist/types/utils/booleanConverter.js.map +1 -0
- package/dist/types/utils/booleanConverter.test.js +59 -0
- package/dist/types/utils/booleanConverter.test.js.map +1 -0
- package/dist/types/utils/catalogMetricsTree.js +2 -0
- package/dist/types/utils/catalogMetricsTree.js.map +1 -0
- package/dist/types/utils/changeset.js +132 -0
- package/dist/types/utils/changeset.js.map +1 -0
- package/dist/types/utils/changeset.mock.js +146 -0
- package/dist/types/utils/changeset.mock.js.map +1 -0
- package/dist/types/utils/changeset.test.js +248 -0
- package/dist/types/utils/changeset.test.js.map +1 -0
- package/dist/types/utils/charts.js +74 -0
- package/dist/types/utils/charts.js.map +1 -0
- package/dist/types/utils/colors.js +15 -0
- package/dist/types/utils/colors.js.map +1 -0
- package/dist/types/utils/colors.test.js +85 -0
- package/dist/types/utils/colors.test.js.map +1 -0
- package/dist/types/utils/conditionalFormatting.js +436 -0
- package/dist/types/utils/conditionalFormatting.js.map +1 -0
- package/dist/types/utils/conditionalFormatting.test.js +105 -0
- package/dist/types/utils/conditionalFormatting.test.js.map +1 -0
- package/dist/types/utils/convertCustomDimensionsToYaml.js +115 -0
- package/dist/types/utils/convertCustomDimensionsToYaml.js.map +1 -0
- package/dist/types/utils/convertCustomMetricsToYaml.js +15 -0
- package/dist/types/utils/convertCustomMetricsToYaml.js.map +1 -0
- package/dist/types/utils/customDimensions.js +27 -0
- package/dist/types/utils/customDimensions.js.map +1 -0
- package/dist/types/utils/dashboard.js +35 -0
- package/dist/types/utils/dashboard.js.map +1 -0
- package/dist/types/utils/dashboard.test.js +36 -0
- package/dist/types/utils/dashboard.test.js.map +1 -0
- package/dist/types/utils/dbt.js +4 -0
- package/dist/types/utils/dbt.js.map +1 -0
- package/dist/types/utils/dbt.test.js +39 -0
- package/dist/types/utils/dbt.test.js.map +1 -0
- package/dist/types/utils/dependencyGraph.js +51 -0
- package/dist/types/utils/dependencyGraph.js.map +1 -0
- package/dist/types/utils/dependencyGraph.test.js +113 -0
- package/dist/types/utils/dependencyGraph.test.js.map +1 -0
- package/dist/types/utils/email.js +76 -0
- package/dist/types/utils/email.js.map +1 -0
- package/dist/types/utils/email.test.js +49 -0
- package/dist/types/utils/email.test.js.map +1 -0
- package/dist/types/utils/fields.js +183 -0
- package/dist/types/utils/fields.js.map +1 -0
- package/dist/types/utils/fields.mock.js +150 -0
- package/dist/types/utils/fields.mock.js.map +1 -0
- package/dist/types/utils/fields.test.js +259 -0
- package/dist/types/utils/fields.test.js.map +1 -0
- package/dist/types/utils/filters.js +763 -0
- package/dist/types/utils/filters.js.map +1 -0
- package/dist/types/utils/filters.mock.js +450 -0
- package/dist/types/utils/filters.mock.js.map +1 -0
- package/dist/types/utils/filters.test.js +360 -0
- package/dist/types/utils/filters.test.js.map +1 -0
- package/dist/types/utils/formatting.js +552 -0
- package/dist/types/utils/formatting.js.map +1 -0
- package/dist/types/utils/formatting.mock.js +28 -0
- package/dist/types/utils/formatting.mock.js.map +1 -0
- package/dist/types/utils/formatting.test.js +1047 -0
- package/dist/types/utils/formatting.test.js.map +1 -0
- package/dist/types/utils/github.js +11 -0
- package/dist/types/utils/github.js.map +1 -0
- package/dist/types/utils/i18n/abstract.js +3 -0
- package/dist/types/utils/i18n/abstract.js.map +1 -0
- package/dist/types/utils/i18n/chartAsCode.js +132 -0
- package/dist/types/utils/i18n/chartAsCode.js.map +1 -0
- package/dist/types/utils/i18n/chartAsCode.test.js +350 -0
- package/dist/types/utils/i18n/chartAsCode.test.js.map +1 -0
- package/dist/types/utils/i18n/dashboardAsCode.js +58 -0
- package/dist/types/utils/i18n/dashboardAsCode.js.map +1 -0
- package/dist/types/utils/i18n/index.js +5 -0
- package/dist/types/utils/i18n/index.js.map +1 -0
- package/dist/types/utils/i18n/merge.js +20 -0
- package/dist/types/utils/i18n/merge.js.map +1 -0
- package/dist/types/utils/i18n/types.js +2 -0
- package/dist/types/utils/i18n/types.js.map +1 -0
- package/dist/types/utils/item.js +154 -0
- package/dist/types/utils/item.js.map +1 -0
- package/dist/types/utils/loadLightdashProjectConfig.js +49 -0
- package/dist/types/utils/loadLightdashProjectConfig.js.map +1 -0
- package/dist/types/utils/loadLightdashProjectConfig.mock.js +127 -0
- package/dist/types/utils/loadLightdashProjectConfig.mock.js.map +1 -0
- package/dist/types/utils/loadLightdashProjectConfig.test.js +137 -0
- package/dist/types/utils/loadLightdashProjectConfig.test.js.map +1 -0
- package/dist/types/utils/metricsExplorer.js +365 -0
- package/dist/types/utils/metricsExplorer.js.map +1 -0
- package/dist/types/utils/oauth.js +242 -0
- package/dist/types/utils/oauth.js.map +1 -0
- package/dist/types/utils/organization.js +23 -0
- package/dist/types/utils/organization.js.map +1 -0
- package/dist/types/utils/projectMemberRole.js +85 -0
- package/dist/types/utils/projectMemberRole.js.map +1 -0
- package/dist/types/utils/projectMemberRole.test.js +36 -0
- package/dist/types/utils/projectMemberRole.test.js.map +1 -0
- package/dist/types/utils/promises.js +5 -0
- package/dist/types/utils/promises.js.map +1 -0
- package/dist/types/utils/sanitizeHtml.js +111 -0
- package/dist/types/utils/sanitizeHtml.js.map +1 -0
- package/dist/types/utils/sanitizeHtml.test.js +101 -0
- package/dist/types/utils/sanitizeHtml.test.js.map +1 -0
- package/dist/types/utils/scheduler.js +85 -0
- package/dist/types/utils/scheduler.js.map +1 -0
- package/dist/types/utils/scheduler.test.js +41 -0
- package/dist/types/utils/scheduler.test.js.map +1 -0
- package/dist/types/utils/searchParams.js +8 -0
- package/dist/types/utils/searchParams.js.map +1 -0
- package/dist/types/utils/sleep.js +6 -0
- package/dist/types/utils/sleep.js.map +1 -0
- package/dist/types/utils/slug.test.js +129 -0
- package/dist/types/utils/slug.test.js.map +1 -0
- package/dist/types/utils/slugs.js +55 -0
- package/dist/types/utils/slugs.js.map +1 -0
- package/dist/types/utils/subtotals.js +4 -0
- package/dist/types/utils/subtotals.js.map +1 -0
- package/dist/types/utils/time.js +25 -0
- package/dist/types/utils/time.js.map +1 -0
- package/dist/types/utils/timeFrames.js +529 -0
- package/dist/types/utils/timeFrames.js.map +1 -0
- package/dist/types/utils/timeFrames.test.js +50 -0
- package/dist/types/utils/timeFrames.test.js.map +1 -0
- package/dist/types/utils/virtualView.js +98 -0
- package/dist/types/utils/virtualView.js.map +1 -0
- package/dist/types/utils/warehouse.js +57 -0
- package/dist/types/utils/warehouse.js.map +1 -0
- package/dist/types/visualizations/CartesianChartDataModel.js +515 -0
- package/dist/types/visualizations/CartesianChartDataModel.js.map +1 -0
- package/dist/types/visualizations/PieChartDataModel.js +258 -0
- package/dist/types/visualizations/PieChartDataModel.js.map +1 -0
- package/dist/types/visualizations/TableDataModel.js +96 -0
- package/dist/types/visualizations/TableDataModel.js.map +1 -0
- package/dist/types/visualizations/chartTransformations.js +107 -0
- package/dist/types/visualizations/chartTransformations.js.map +1 -0
- package/dist/types/visualizations/helpers/getCartesianAxisFormatterConfig.js +142 -0
- package/dist/types/visualizations/helpers/getCartesianAxisFormatterConfig.js.map +1 -0
- package/dist/types/visualizations/types/IResultsRunner.js +2 -0
- package/dist/types/visualizations/types/IResultsRunner.js.map +1 -0
- package/dist/types/visualizations/types/index.js +78 -0
- package/dist/types/visualizations/types/index.js.map +1 -0
- package/package.json +1 -1
- package/dist/tsconfig.types.tsbuildinfo +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/parser.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AACjE,OAAO,EACH,kCAAkC,EAClC,oCAAoC,EACpC,mCAAmC,EACnC,yBAAyB,EACzB,uCAAuC,EACvC,qCAAqC,EACrC,mCAAmC,EACnC,4BAA4B,EAC5B,2BAA2B,EAC3B,iCAAiC,EACjC,0CAA0C,EAC1C,iCAAiC,EACjC,mCAAmC,EACnC,oCAAoC,GACvC,MAAM,SAAS,CAAC;AAGjB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAkB,EAAE,QAAiB,EAAE,EAAE;IACnE,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,cAAc;YACf,OAAO,qCAAqC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACrE,KAAK,YAAY;YACb,OAAO,mCAAmC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnE,KAAK,aAAa;YACd,OAAO,yBAAyB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACzD,KAAK,mBAAmB;YACpB,OAAO,0CAA0C,CAAC,SAAS,CACvD,QAAQ,CACX,CAAC;QACN,KAAK,sBAAsB;YACvB,OAAO,oCAAoC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACpE,KAAK,wBAAwB;YACzB,OAAO,iCAAiC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjE,KAAK,6BAA6B;YAC9B,OAAO,mCAAmC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnE,KAAK,mBAAmB;YACpB,OAAO,kCAAkC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAClE,KAAK,qBAAqB;YACtB,OAAO,oCAAoC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACpE,KAAK,gBAAgB;YACjB,OAAO,uCAAuC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvE,KAAK,YAAY;YACb,OAAO,mCAAmC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnE,KAAK,gBAAgB;YACjB,OAAO,4BAA4B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5D,KAAK,eAAe;YAChB,OAAO,2BAA2B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC3D,KAAK,UAAU;YACX,OAAO,iCAAiC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjE;YACI,OAAO,iBAAiB,CACpB,QAAQ,EACR,sBAAsB,QAAQ,EAAE,CACnC,CAAC;IACV,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from './fieldId';
|
|
3
|
+
const sortFieldSchema = z.object({
|
|
4
|
+
fieldId: getFieldIdSchema({ additionalDescription: null }),
|
|
5
|
+
descending: z
|
|
6
|
+
.boolean()
|
|
7
|
+
.describe('If true sorts in descending order, if false sorts in ascending order'),
|
|
8
|
+
nullsFirst: z
|
|
9
|
+
.boolean()
|
|
10
|
+
.describe('If true sorts nulls first, if false sorts nulls last, otherwise sorts by warehouse default')
|
|
11
|
+
.nullable(),
|
|
12
|
+
});
|
|
13
|
+
export default sortFieldSchema;
|
|
14
|
+
//# sourceMappingURL=sortField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sortField.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/sortField.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,gBAAgB,CAAC,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC;IAC1D,UAAU,EAAE,CAAC;SACR,OAAO,EAAE;SACT,QAAQ,CACL,sEAAsE,CACzE;IACL,UAAU,EAAE,CAAC;SACR,OAAO,EAAE;SACT,QAAQ,CACL,4FAA4F,CAC/F;SACA,QAAQ,EAAE;CAClB,CAAC,CAAC;AAIH,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
3
|
+
export const orderBySchema = z.object({
|
|
4
|
+
fieldId: getFieldIdSchema({ additionalDescription: 'Field to order by' }),
|
|
5
|
+
order: z.enum(['asc', 'desc']).nullable(),
|
|
6
|
+
});
|
|
7
|
+
export const orderBySchemaDescription = [
|
|
8
|
+
'Specifies the order in which rows are processed by the table calculation.',
|
|
9
|
+
'For time-series: typically order by date/time ascending.',
|
|
10
|
+
'For rankings: order by the metric you want to rank, descending for highest-first.',
|
|
11
|
+
].join('\n');
|
|
12
|
+
export const partitionBySchema = getFieldIdSchema({
|
|
13
|
+
additionalDescription: null,
|
|
14
|
+
});
|
|
15
|
+
export const partitionBySchemaDescription = [
|
|
16
|
+
'Fields to PARTITION BY - divides result set into independent groups.',
|
|
17
|
+
'Each partition calculates independently (rankings restart, percentages sum to 100% per partition).',
|
|
18
|
+
'Empty array or null: single partition (calculations across all rows).',
|
|
19
|
+
].join('\n');
|
|
20
|
+
export const baseTableCalcSchema = z.object({
|
|
21
|
+
name: z
|
|
22
|
+
.string()
|
|
23
|
+
.describe('Unique name for the table calculation, e.g. "percent_change_from_previous"'),
|
|
24
|
+
displayName: z
|
|
25
|
+
.string()
|
|
26
|
+
.describe('Display name for the table calculation, e.g. "MoM revenue change"'),
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=tableCalcBaseSchemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcBaseSchemas.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcBaseSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,OAAO,EAAE,gBAAgB,CAAC,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,CAAC;IACzE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACpC,2EAA2E;IAC3E,0DAA0D;IAC1D,mFAAmF;CACtF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;IAC9C,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IACxC,sEAAsE;IACtE,oGAAoG;IACpG,uEAAuE;CAC1E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC;SACF,MAAM,EAAE;SACR,QAAQ,CACL,4EAA4E,CAC/E;IACL,WAAW,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,CACL,mEAAmE,CACtE;CACR,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
3
|
+
import { baseTableCalcSchema, orderBySchema, orderBySchemaDescription, } from './tableCalcBaseSchemas';
|
|
4
|
+
export const tableCalcPercentChangeFromPreviousSchema = baseTableCalcSchema.extend({
|
|
5
|
+
type: z.literal('percent_change_from_previous'),
|
|
6
|
+
fieldId: getFieldIdSchema({
|
|
7
|
+
additionalDescription: 'Field whose values you want to compare',
|
|
8
|
+
}),
|
|
9
|
+
orderBy: z
|
|
10
|
+
.array(orderBySchema)
|
|
11
|
+
.min(1)
|
|
12
|
+
.describe(orderBySchemaDescription),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=tableCalcPercentChangeFromPrevious.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcPercentChangeFromPrevious.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcPercentChangeFromPrevious.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACH,mBAAmB,EACnB,aAAa,EACb,wBAAwB,GAC3B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAC,MAAM,wCAAwC,GACjD,mBAAmB,CAAC,MAAM,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,8BAA8B,CAAC;IAC/C,OAAO,EAAE,gBAAgB,CAAC;QACtB,qBAAqB,EAAE,wCAAwC;KAClE,CAAC;IACF,OAAO,EAAE,CAAC;SACL,KAAK,CAAC,aAAa,CAAC;SACpB,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;CAC1C,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
3
|
+
import { baseTableCalcSchema, partitionBySchema, partitionBySchemaDescription, } from './tableCalcBaseSchemas';
|
|
4
|
+
export const tableCalcPercentOfColumnTotalSchema = baseTableCalcSchema.extend({
|
|
5
|
+
type: z.literal('percent_of_column_total'),
|
|
6
|
+
fieldId: getFieldIdSchema({
|
|
7
|
+
additionalDescription: 'Field to calculate percentage of column total',
|
|
8
|
+
}),
|
|
9
|
+
partitionBy: z
|
|
10
|
+
.array(partitionBySchema)
|
|
11
|
+
.nullable()
|
|
12
|
+
.describe(partitionBySchemaDescription),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=tableCalcPercentOfColumnTotal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcPercentOfColumnTotal.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcPercentOfColumnTotal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,GAC/B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAC,MAAM,mCAAmC,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAC1E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAC1C,OAAO,EAAE,gBAAgB,CAAC;QACtB,qBAAqB,EAAE,+CAA+C;KACzE,CAAC;IACF,WAAW,EAAE,CAAC;SACT,KAAK,CAAC,iBAAiB,CAAC;SACxB,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;CAC9C,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
3
|
+
import { baseTableCalcSchema, orderBySchema, orderBySchemaDescription, } from './tableCalcBaseSchemas';
|
|
4
|
+
export const tableCalcPercentOfPreviousValueSchema = baseTableCalcSchema.extend({
|
|
5
|
+
type: z.literal('percent_of_previous_value'),
|
|
6
|
+
fieldId: getFieldIdSchema({
|
|
7
|
+
additionalDescription: 'Field whose values you want to compare',
|
|
8
|
+
}),
|
|
9
|
+
orderBy: z
|
|
10
|
+
.array(orderBySchema)
|
|
11
|
+
.min(1)
|
|
12
|
+
.describe(orderBySchemaDescription),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=tableCalcPercentOfPreviousValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcPercentOfPreviousValue.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcPercentOfPreviousValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACH,mBAAmB,EACnB,aAAa,EACb,wBAAwB,GAC3B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAC,MAAM,qCAAqC,GAAG,mBAAmB,CAAC,MAAM,CAC3E;IACI,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;IAC5C,OAAO,EAAE,gBAAgB,CAAC;QACtB,qBAAqB,EAAE,wCAAwC;KAClE,CAAC;IACF,OAAO,EAAE,CAAC;SACL,KAAK,CAAC,aAAa,CAAC;SACpB,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;CAC1C,CACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
3
|
+
import { baseTableCalcSchema } from './tableCalcBaseSchemas';
|
|
4
|
+
export const tableCalcRankInColumnSchema = baseTableCalcSchema.extend({
|
|
5
|
+
type: z.literal('rank_in_column'),
|
|
6
|
+
fieldId: getFieldIdSchema({
|
|
7
|
+
additionalDescription: 'Field to rank by',
|
|
8
|
+
}),
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=tableCalcRankInColumn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcRankInColumn.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcRankInColumn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACjC,OAAO,EAAE,gBAAgB,CAAC;QACtB,qBAAqB,EAAE,kBAAkB;KAC5C,CAAC;CACL,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
3
|
+
import { baseTableCalcSchema } from './tableCalcBaseSchemas';
|
|
4
|
+
export const tableCalcRunningTotalSchema = baseTableCalcSchema.extend({
|
|
5
|
+
type: z.literal('running_total'),
|
|
6
|
+
fieldId: getFieldIdSchema({
|
|
7
|
+
additionalDescription: 'Field to calculate running total of',
|
|
8
|
+
}),
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=tableCalcRunningTotal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcRunningTotal.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcRunningTotal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IAChC,OAAO,EAAE,gBAAgB,CAAC;QACtB,qBAAqB,EAAE,qCAAqC;KAC/D,CAAC;CACL,CAAC,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { WindowFunctionType } from '../../../../types/field';
|
|
3
|
+
import { getFieldIdSchema } from '../fieldId';
|
|
4
|
+
import { baseTableCalcSchema, orderBySchema, orderBySchemaDescription, partitionBySchema, partitionBySchemaDescription, } from './tableCalcBaseSchemas';
|
|
5
|
+
const windowFunctionTypeSchema = z.enum([
|
|
6
|
+
WindowFunctionType.ROW_NUMBER,
|
|
7
|
+
WindowFunctionType.PERCENT_RANK,
|
|
8
|
+
WindowFunctionType.CUME_DIST,
|
|
9
|
+
WindowFunctionType.RANK,
|
|
10
|
+
WindowFunctionType.SUM,
|
|
11
|
+
WindowFunctionType.AVG,
|
|
12
|
+
WindowFunctionType.COUNT,
|
|
13
|
+
WindowFunctionType.MIN,
|
|
14
|
+
WindowFunctionType.MAX,
|
|
15
|
+
]);
|
|
16
|
+
export const tableCalcWindowFunctionSchema = baseTableCalcSchema.extend({
|
|
17
|
+
type: z.literal('window_function'),
|
|
18
|
+
windowFunction: windowFunctionTypeSchema.describe([
|
|
19
|
+
'Type of window function to apply.',
|
|
20
|
+
'',
|
|
21
|
+
'**Ranking functions** (fieldId optional, ignored if provided):',
|
|
22
|
+
'- row_number: Sequential numbering (1, 2, 3...)',
|
|
23
|
+
'- percent_rank: Relative rank as percentage (0.0-1.0)',
|
|
24
|
+
'- cume_dist: Cumulative distribution as percentage (0.0-1.0)',
|
|
25
|
+
'- rank: Positional rank (1, 2, 3...) with ties',
|
|
26
|
+
'',
|
|
27
|
+
'**Aggregate functions** (fieldId required):',
|
|
28
|
+
'- sum: Sum values within frame',
|
|
29
|
+
'- avg: Average values within frame',
|
|
30
|
+
'- count: Count values within frame',
|
|
31
|
+
'- min: Minimum value within frame',
|
|
32
|
+
'- max: Maximum value within frame',
|
|
33
|
+
].join('\n')),
|
|
34
|
+
fieldId: getFieldIdSchema({
|
|
35
|
+
additionalDescription: 'Field to aggregate (required for sum/avg/count/min/max, not used for row_number/percent_rank/cume_dist/rank)',
|
|
36
|
+
}).nullable(),
|
|
37
|
+
orderBy: z
|
|
38
|
+
.array(orderBySchema)
|
|
39
|
+
.nullable()
|
|
40
|
+
.describe(orderBySchemaDescription),
|
|
41
|
+
partitionBy: z
|
|
42
|
+
.array(partitionBySchema)
|
|
43
|
+
.nullable()
|
|
44
|
+
.describe(partitionBySchemaDescription),
|
|
45
|
+
frame: z
|
|
46
|
+
.object({
|
|
47
|
+
frameType: z
|
|
48
|
+
.enum(['rows', 'range'])
|
|
49
|
+
.describe([
|
|
50
|
+
'Frame type:',
|
|
51
|
+
'- rows: Physical row count',
|
|
52
|
+
'- range: Logical value-based (includes peer rows with same ORDER BY value)',
|
|
53
|
+
].join('\n')),
|
|
54
|
+
start: z
|
|
55
|
+
.object({
|
|
56
|
+
type: z.enum([
|
|
57
|
+
'unbounded_preceding',
|
|
58
|
+
'preceding',
|
|
59
|
+
'current_row',
|
|
60
|
+
'following',
|
|
61
|
+
'unbounded_following',
|
|
62
|
+
]),
|
|
63
|
+
offset: z
|
|
64
|
+
.number()
|
|
65
|
+
.int()
|
|
66
|
+
.positive()
|
|
67
|
+
.nullable()
|
|
68
|
+
.describe('Number of rows for PRECEDING/FOLLOWING (e.g., 6 for "6 PRECEDING")'),
|
|
69
|
+
})
|
|
70
|
+
.nullable()
|
|
71
|
+
.describe('Start boundary. Null for single-boundary syntax.'),
|
|
72
|
+
end: z
|
|
73
|
+
.object({
|
|
74
|
+
type: z.enum([
|
|
75
|
+
'unbounded_preceding',
|
|
76
|
+
'preceding',
|
|
77
|
+
'current_row',
|
|
78
|
+
'following',
|
|
79
|
+
'unbounded_following',
|
|
80
|
+
]),
|
|
81
|
+
offset: z
|
|
82
|
+
.number()
|
|
83
|
+
.int()
|
|
84
|
+
.positive()
|
|
85
|
+
.nullable()
|
|
86
|
+
.describe('Number of rows for PRECEDING/FOLLOWING'),
|
|
87
|
+
})
|
|
88
|
+
.describe('End boundary (required)'),
|
|
89
|
+
})
|
|
90
|
+
.nullable()
|
|
91
|
+
.describe([
|
|
92
|
+
'Defines which rows to include in calculation. Null uses database defaults.',
|
|
93
|
+
'',
|
|
94
|
+
'**Common patterns:**',
|
|
95
|
+
'- Moving average (N periods): {frameType: "rows", start: {type: "preceding", offset: N-1}, end: {type: "current_row"}}',
|
|
96
|
+
'- Running total: {frameType: "rows", start: {type: "unbounded_preceding"}, end: {type: "current_row"}}',
|
|
97
|
+
'- Centered window: {frameType: "rows", start: {type: "preceding", offset: 1}, end: {type: "following", offset: 1}}',
|
|
98
|
+
'',
|
|
99
|
+
'**Default when null:**',
|
|
100
|
+
'- Aggregates WITH ORDER BY: RANGE UNBOUNDED PRECEDING AND CURRENT ROW (cumulative)',
|
|
101
|
+
'- Aggregates WITHOUT ORDER BY: Entire partition (all rows)',
|
|
102
|
+
'- Ranking functions: Always use entire partition (frame clause has no effect)',
|
|
103
|
+
].join('\n')),
|
|
104
|
+
});
|
|
105
|
+
//# sourceMappingURL=tableCalcWindowFunction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcWindowFunction.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcWindowFunction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { CustomFormatType, FrameBoundaryType, FrameType, NumberSeparator, TableCalculationTemplateType, TableCalculationType, } from '../../../../types/field';
|
|
3
|
+
import assertUnreachable from '../../../../utils/assertUnreachable';
|
|
4
|
+
import { tableCalcPercentChangeFromPreviousSchema } from './tableCalcPercentChangeFromPrevious';
|
|
5
|
+
import { tableCalcPercentOfColumnTotalSchema } from './tableCalcPercentOfColumnTotal';
|
|
6
|
+
import { tableCalcPercentOfPreviousValueSchema } from './tableCalcPercentOfPreviousValue';
|
|
7
|
+
import { tableCalcRankInColumnSchema } from './tableCalcRankInColumn';
|
|
8
|
+
import { tableCalcRunningTotalSchema } from './tableCalcRunningTotal';
|
|
9
|
+
import { tableCalcWindowFunctionSchema } from './tableCalcWindowFunction';
|
|
10
|
+
const tableCalcSchema = z.discriminatedUnion('type', [
|
|
11
|
+
tableCalcPercentChangeFromPreviousSchema,
|
|
12
|
+
tableCalcPercentOfPreviousValueSchema,
|
|
13
|
+
tableCalcPercentOfColumnTotalSchema,
|
|
14
|
+
tableCalcRankInColumnSchema,
|
|
15
|
+
tableCalcRunningTotalSchema,
|
|
16
|
+
tableCalcWindowFunctionSchema,
|
|
17
|
+
]);
|
|
18
|
+
export const tableCalcsSchema = z.array(tableCalcSchema).nullable().describe(`
|
|
19
|
+
Table calculations perform row-by-row calculations on query results without collapsing rows. Similar to SQL window functions.
|
|
20
|
+
|
|
21
|
+
**Available Types:**
|
|
22
|
+
- Simple calculations: percent_change_from_previous, percent_of_previous_value, percent_of_column_total, rank_in_column, running_total
|
|
23
|
+
- Advanced window_function: Supports row_number, percent_rank, sum, avg, count, min, max with optional partitioning, ordering, and frame clauses
|
|
24
|
+
|
|
25
|
+
**Technical Requirements:**
|
|
26
|
+
- Appear as additional columns in query results
|
|
27
|
+
- Can be used in sorts and filters alongside dimensions/metrics
|
|
28
|
+
- Multiple calculations can be combined in a single query
|
|
29
|
+
- All fields referenced must exist in the query (dimensions, metrics, or other table calculations)
|
|
30
|
+
`);
|
|
31
|
+
function frameBoundaryStringToEnum(boundaryType) {
|
|
32
|
+
switch (boundaryType) {
|
|
33
|
+
case 'unbounded_preceding':
|
|
34
|
+
return FrameBoundaryType.UNBOUNDED_PRECEDING;
|
|
35
|
+
case 'preceding':
|
|
36
|
+
return FrameBoundaryType.PRECEDING;
|
|
37
|
+
case 'current_row':
|
|
38
|
+
return FrameBoundaryType.CURRENT_ROW;
|
|
39
|
+
case 'following':
|
|
40
|
+
return FrameBoundaryType.FOLLOWING;
|
|
41
|
+
case 'unbounded_following':
|
|
42
|
+
return FrameBoundaryType.UNBOUNDED_FOLLOWING;
|
|
43
|
+
default:
|
|
44
|
+
return assertUnreachable(boundaryType, 'Unknown boundary type');
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function convertTableCalcSchemaToTableCalc(tableCalc) {
|
|
48
|
+
const { type, name, displayName } = tableCalc;
|
|
49
|
+
// Build the template
|
|
50
|
+
const baseCalc = {
|
|
51
|
+
name,
|
|
52
|
+
displayName,
|
|
53
|
+
type: TableCalculationType.NUMBER,
|
|
54
|
+
};
|
|
55
|
+
switch (type) {
|
|
56
|
+
case 'percent_change_from_previous':
|
|
57
|
+
return {
|
|
58
|
+
...baseCalc,
|
|
59
|
+
template: {
|
|
60
|
+
type: TableCalculationTemplateType.PERCENT_CHANGE_FROM_PREVIOUS,
|
|
61
|
+
fieldId: tableCalc.fieldId,
|
|
62
|
+
orderBy: tableCalc.orderBy ?? [],
|
|
63
|
+
},
|
|
64
|
+
format: {
|
|
65
|
+
type: CustomFormatType.PERCENT,
|
|
66
|
+
separator: NumberSeparator.DEFAULT,
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
case 'percent_of_previous_value':
|
|
70
|
+
return {
|
|
71
|
+
...baseCalc,
|
|
72
|
+
template: {
|
|
73
|
+
type: TableCalculationTemplateType.PERCENT_OF_PREVIOUS_VALUE,
|
|
74
|
+
fieldId: tableCalc.fieldId,
|
|
75
|
+
orderBy: tableCalc.orderBy ?? [],
|
|
76
|
+
},
|
|
77
|
+
format: {
|
|
78
|
+
type: CustomFormatType.PERCENT,
|
|
79
|
+
separator: NumberSeparator.DEFAULT,
|
|
80
|
+
},
|
|
81
|
+
};
|
|
82
|
+
case 'percent_of_column_total':
|
|
83
|
+
return {
|
|
84
|
+
...baseCalc,
|
|
85
|
+
template: {
|
|
86
|
+
type: TableCalculationTemplateType.PERCENT_OF_COLUMN_TOTAL,
|
|
87
|
+
fieldId: tableCalc.fieldId,
|
|
88
|
+
partitionBy: tableCalc.partitionBy ?? [],
|
|
89
|
+
},
|
|
90
|
+
format: {
|
|
91
|
+
type: CustomFormatType.PERCENT,
|
|
92
|
+
separator: NumberSeparator.DEFAULT,
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
case 'rank_in_column':
|
|
96
|
+
return {
|
|
97
|
+
...baseCalc,
|
|
98
|
+
template: {
|
|
99
|
+
type: TableCalculationTemplateType.RANK_IN_COLUMN,
|
|
100
|
+
fieldId: tableCalc.fieldId,
|
|
101
|
+
},
|
|
102
|
+
format: {
|
|
103
|
+
type: CustomFormatType.NUMBER,
|
|
104
|
+
separator: NumberSeparator.DEFAULT,
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
case 'running_total':
|
|
108
|
+
return {
|
|
109
|
+
...baseCalc,
|
|
110
|
+
template: {
|
|
111
|
+
type: TableCalculationTemplateType.RUNNING_TOTAL,
|
|
112
|
+
fieldId: tableCalc.fieldId,
|
|
113
|
+
},
|
|
114
|
+
format: {
|
|
115
|
+
type: CustomFormatType.NUMBER,
|
|
116
|
+
separator: NumberSeparator.DEFAULT,
|
|
117
|
+
},
|
|
118
|
+
};
|
|
119
|
+
case 'window_function': {
|
|
120
|
+
const format = tableCalc.windowFunction === 'percent_rank' ||
|
|
121
|
+
tableCalc.windowFunction === 'cume_dist'
|
|
122
|
+
? {
|
|
123
|
+
type: CustomFormatType.PERCENT,
|
|
124
|
+
separator: NumberSeparator.DEFAULT,
|
|
125
|
+
}
|
|
126
|
+
: {
|
|
127
|
+
type: CustomFormatType.NUMBER,
|
|
128
|
+
separator: NumberSeparator.DEFAULT,
|
|
129
|
+
};
|
|
130
|
+
// Convert frame clause string literals to enum types
|
|
131
|
+
const frame = tableCalc.frame
|
|
132
|
+
? {
|
|
133
|
+
frameType: tableCalc.frame.frameType === 'rows'
|
|
134
|
+
? FrameType.ROWS
|
|
135
|
+
: FrameType.RANGE,
|
|
136
|
+
start: tableCalc.frame.start
|
|
137
|
+
? {
|
|
138
|
+
type: frameBoundaryStringToEnum(tableCalc.frame.start.type),
|
|
139
|
+
offset: tableCalc.frame.start.offset ?? undefined,
|
|
140
|
+
}
|
|
141
|
+
: undefined,
|
|
142
|
+
end: {
|
|
143
|
+
type: frameBoundaryStringToEnum(tableCalc.frame.end.type),
|
|
144
|
+
offset: tableCalc.frame.end.offset ?? undefined,
|
|
145
|
+
},
|
|
146
|
+
}
|
|
147
|
+
: undefined;
|
|
148
|
+
return {
|
|
149
|
+
...baseCalc,
|
|
150
|
+
template: {
|
|
151
|
+
type: TableCalculationTemplateType.WINDOW_FUNCTION,
|
|
152
|
+
windowFunction: tableCalc.windowFunction,
|
|
153
|
+
fieldId: tableCalc.fieldId,
|
|
154
|
+
orderBy: tableCalc.orderBy ?? [],
|
|
155
|
+
partitionBy: tableCalc.partitionBy ?? [],
|
|
156
|
+
frame,
|
|
157
|
+
},
|
|
158
|
+
format,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
default:
|
|
162
|
+
return assertUnreachable(type, 'Unknown table calc type');
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
export function convertAiTableCalcsSchemaToTableCalcs(tableCalcs) {
|
|
166
|
+
return tableCalcs?.map((tc) => convertTableCalcSchemaToTableCalc(tc)) ?? [];
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=tableCalcs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableCalcs.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tableCalcs/tableCalcs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
const toolSchemaBuilder = (schema) => ({
|
|
3
|
+
/**
|
|
4
|
+
* Extends the basic schema with the given fields
|
|
5
|
+
*/
|
|
6
|
+
extend: (fields) => toolSchemaBuilder(schema.extend(fields)),
|
|
7
|
+
/**
|
|
8
|
+
* Adds a page number to the schema, this is useful for tools that rely on pagination
|
|
9
|
+
*/
|
|
10
|
+
withPagination: () => toolSchemaBuilder(schema.extend({
|
|
11
|
+
// We need to coerce because LLMs were passing strings instead of numbers quite often (via MCP)
|
|
12
|
+
page: z.coerce
|
|
13
|
+
.number()
|
|
14
|
+
.positive()
|
|
15
|
+
.nullable()
|
|
16
|
+
.describe('Use this to paginate through the results'),
|
|
17
|
+
})),
|
|
18
|
+
/**
|
|
19
|
+
* Builds the schema
|
|
20
|
+
*/
|
|
21
|
+
build: () => schema,
|
|
22
|
+
/**
|
|
23
|
+
* Returns the zod schema so far
|
|
24
|
+
*/
|
|
25
|
+
schema,
|
|
26
|
+
});
|
|
27
|
+
function createToolSchema({ type, description, version, }) {
|
|
28
|
+
return toolSchemaBuilder(z
|
|
29
|
+
.object({
|
|
30
|
+
type: z.literal(version !== undefined
|
|
31
|
+
? `${type}_v${version}`
|
|
32
|
+
: type),
|
|
33
|
+
})
|
|
34
|
+
.describe(description));
|
|
35
|
+
}
|
|
36
|
+
export { createToolSchema };
|
|
37
|
+
//# sourceMappingURL=toolSchemaBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolSchemaBuilder.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/toolSchemaBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,MAAM,iBAAiB,GAAG,CACtB,MAA4B,EACF,EAAE,CAAC,CAAC;IAC9B;;OAEG;IACH,MAAM,EAAE,CAAgC,MAAe,EAAE,EAAE,CACvD,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAEtC;IAEL;;OAEG;IACH,cAAc,EAAE,GAAG,EAAE,CACjB,iBAAiB,CACb,MAAM,CAAC,MAAM,CAAC;QACV,+FAA+F;QAC/F,IAAI,EAAE,CAAC,CAAC,MAAM;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CAAC,0CAA0C,CAAC;KAC5D,CAAC,CACgE;IAE1E;;OAEG;IACH,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM;IAEnB;;OAEG;IACH,MAAM;CACT,CAAC,CAAC;AAoBH,SAAS,gBAAgB,CAIvB,EACE,IAAI,EACJ,WAAW,EACX,OAAO,GAKV;IACG,OAAO,iBAAiB,CACpB,CAAC;SACI,MAAM,CAAC;QACJ,IAAI,EAAE,CAAC,CAAC,OAAO,CACX,OAAO,KAAK,SAAS;YACjB,CAAC,CAAE,GAAG,IAAI,KAAK,OAAO,EAAY;YAClC,CAAC,CAAC,IAAI,CACb;KACJ,CAAC;SACD,QAAQ,CAAC,WAAW,CAAC,CAC7B,CAAC;AACN,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export * from './toolDashboardArgs';
|
|
2
|
+
export * from './toolDashboardV2Args';
|
|
3
|
+
export * from './toolFindChartsArgs';
|
|
4
|
+
export * from './toolFindContentArgs';
|
|
5
|
+
export * from './toolFindDashboardsArgs';
|
|
6
|
+
export * from './toolFindExploresArgs';
|
|
7
|
+
export * from './toolFindFieldsArgs';
|
|
8
|
+
export * from './toolImproveContextArgs';
|
|
9
|
+
export * from './toolProposeChangeArgs';
|
|
10
|
+
export * from './toolRunMetricQueryArgs';
|
|
11
|
+
export * from './toolRunQueryArgs';
|
|
12
|
+
export * from './toolSearchFieldValuesArgs';
|
|
13
|
+
export * from './toolTableVizArgs';
|
|
14
|
+
export * from './toolTimeSeriesArgs';
|
|
15
|
+
export * from './toolVerticalBarArgs';
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tools/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import assertUnreachable from '../../../../utils/assertUnreachable';
|
|
3
|
+
import { AiResultType } from '../../types';
|
|
4
|
+
import { customMetricsSchema } from '../customMetrics';
|
|
5
|
+
import { filtersSchemaV2 } from '../filters';
|
|
6
|
+
import { baseOutputMetadataSchema } from '../outputMetadata';
|
|
7
|
+
import { tableCalcsSchema } from '../tableCalcs/tableCalcs';
|
|
8
|
+
import { createToolSchema } from '../toolSchemaBuilder';
|
|
9
|
+
import visualizationMetadataSchema from '../visualizationMetadata';
|
|
10
|
+
import { tableVizConfigSchema, verticalBarMetricVizConfigSchema, } from '../visualizations';
|
|
11
|
+
import { timeSeriesMetricVizConfigSchema } from '../visualizations/timeSeriesViz';
|
|
12
|
+
import { toolTableVizArgsSchemaTransformed } from './toolTableVizArgs';
|
|
13
|
+
import { toolTimeSeriesArgsSchemaTransformed } from './toolTimeSeriesArgs';
|
|
14
|
+
import { toolVerticalBarArgsSchemaTransformed } from './toolVerticalBarArgs';
|
|
15
|
+
export const TOOL_DASHBOARD_DESCRIPTION = `Use this tool to generate multiple visualizations for a dashboard based on a specific theme. Instead of making multiple parallel tool calls for individual visualizations, this tool takes an array of visualization configurations and generates them all at once, ensuring thematic consistency and better performance.
|
|
16
|
+
|
|
17
|
+
Dashboard Design Philosophy:
|
|
18
|
+
Create "summary" or "executive" level dashboards that provide high-level overviews of specific topics (e.g., Support Dashboard, Revenue Performance, Sales Operations). These dashboards should be designed to monitor trends and key metric performance at a glance.
|
|
19
|
+
|
|
20
|
+
Recommended Dashboard Structure:
|
|
21
|
+
1. **Summary Metrics at the Top**: Start with key performance indicators (KPIs) as tables showing overall summary metrics
|
|
22
|
+
2. **Time-Series Analysis**: Include time-series charts with appropriate granularities to show how metrics trend over time:
|
|
23
|
+
- Use line charts for smaller granularities (daily, weekly)
|
|
24
|
+
- Use bar charts for more grouped data (monthly, quarterly)
|
|
25
|
+
3. **Detailed Breakdowns**: Add tables with more detail and specific line items that have the biggest impact on metrics
|
|
26
|
+
- Show problematic areas that need attention (e.g., longest response times, highest churn segments)
|
|
27
|
+
- Highlight actionable insights and outliers
|
|
28
|
+
|
|
29
|
+
Usage tips:
|
|
30
|
+
- Use this when you need to create 2 or more related visualizations for a dashboard
|
|
31
|
+
- Ensure all visualizations follow the same theme and tell a cohesive story
|
|
32
|
+
- Each visualization in the array should have a clear title and description
|
|
33
|
+
- Mix different visualization types strategically: tables for KPIs → time-series for trends → tables for detailed breakdowns
|
|
34
|
+
- Make use of the breakdownByDimension to show more dense visualizations instead of having multiple different charts for the same metric:
|
|
35
|
+
- "metric A over time, broken down by dimension B"
|
|
36
|
+
- "dimension A broken down by dimension B, with Y axis of important metric"
|
|
37
|
+
- If some of the visualizations fail to generate, you can still generate the dashboard with the successful visualizations and return a message about the failed visualizations.
|
|
38
|
+
`;
|
|
39
|
+
// Base visualization schema that all visualizations must have
|
|
40
|
+
const baseVisualizationSchema = z.object({
|
|
41
|
+
...visualizationMetadataSchema.shape,
|
|
42
|
+
customMetrics: customMetricsSchema,
|
|
43
|
+
tableCalculations: tableCalcsSchema,
|
|
44
|
+
filters: filtersSchemaV2
|
|
45
|
+
.nullable()
|
|
46
|
+
.describe('Filters to apply to the query. Filtered fields must exist in the selected explore or should be referenced from the custom metrics.'),
|
|
47
|
+
});
|
|
48
|
+
const dashboardTableVisualizationSchema = baseVisualizationSchema.extend({
|
|
49
|
+
type: z.literal(AiResultType.TABLE_RESULT),
|
|
50
|
+
vizConfig: tableVizConfigSchema,
|
|
51
|
+
});
|
|
52
|
+
const dashboardTimeSeriesVisualizationSchema = baseVisualizationSchema.extend({
|
|
53
|
+
type: z.literal(AiResultType.TIME_SERIES_RESULT),
|
|
54
|
+
vizConfig: timeSeriesMetricVizConfigSchema,
|
|
55
|
+
});
|
|
56
|
+
const dashboardBarVisualizationSchema = baseVisualizationSchema.extend({
|
|
57
|
+
type: z.literal(AiResultType.VERTICAL_BAR_RESULT),
|
|
58
|
+
vizConfig: verticalBarMetricVizConfigSchema,
|
|
59
|
+
});
|
|
60
|
+
const dashboardVisualizationSchema = z
|
|
61
|
+
.union([
|
|
62
|
+
dashboardTableVisualizationSchema,
|
|
63
|
+
dashboardTimeSeriesVisualizationSchema,
|
|
64
|
+
dashboardBarVisualizationSchema,
|
|
65
|
+
])
|
|
66
|
+
// we don't need followUpTools for dashboard charts but for schema compat reasons we add it here
|
|
67
|
+
.transform((viz) => ({ ...viz, followUpTools: [] }));
|
|
68
|
+
export const toolDashboardArgsSchema = createToolSchema({
|
|
69
|
+
type: AiResultType.DASHBOARD_RESULT,
|
|
70
|
+
description: TOOL_DASHBOARD_DESCRIPTION,
|
|
71
|
+
})
|
|
72
|
+
.extend({
|
|
73
|
+
title: z.string().describe('A descriptive title for the dashboard'),
|
|
74
|
+
description: z
|
|
75
|
+
.string()
|
|
76
|
+
.describe('A descriptive summary or explanation for the dashboard.'),
|
|
77
|
+
visualizations: z
|
|
78
|
+
.array(dashboardVisualizationSchema)
|
|
79
|
+
.min(2)
|
|
80
|
+
.max(15)
|
|
81
|
+
.describe('Array of visualization configurations to generate for this dashboard. Each should contribute to the overall theme.'),
|
|
82
|
+
})
|
|
83
|
+
.build();
|
|
84
|
+
export const toolDashboardArgsSchemaTransformed = toolDashboardArgsSchema.transform((data) => ({
|
|
85
|
+
...data,
|
|
86
|
+
visualizations: data.visualizations.map((vis) => {
|
|
87
|
+
switch (vis.type) {
|
|
88
|
+
case AiResultType.TABLE_RESULT:
|
|
89
|
+
return toolTableVizArgsSchemaTransformed.parse(vis);
|
|
90
|
+
case AiResultType.TIME_SERIES_RESULT:
|
|
91
|
+
return toolTimeSeriesArgsSchemaTransformed.parse(vis);
|
|
92
|
+
case AiResultType.VERTICAL_BAR_RESULT:
|
|
93
|
+
return toolVerticalBarArgsSchemaTransformed.parse(vis);
|
|
94
|
+
default:
|
|
95
|
+
return assertUnreachable(vis, 'Invalid visualization type');
|
|
96
|
+
}
|
|
97
|
+
}),
|
|
98
|
+
}));
|
|
99
|
+
export const toolDashboardOutputSchema = z.object({
|
|
100
|
+
result: z.string(),
|
|
101
|
+
metadata: baseOutputMetadataSchema,
|
|
102
|
+
});
|
|
103
|
+
//# sourceMappingURL=toolDashboardArgs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolDashboardArgs.js","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/schemas/tools/toolDashboardArgs.ts"],"names":[],"mappings":"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"}
|