@praxisui/table 8.0.0-beta.36 → 8.0.0-beta.37

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.
@@ -39405,7 +39405,7 @@ class PraxisTable {
39405
39405
  if (this.aiAdapter || this.aiAdapterLoadStarted)
39406
39406
  return;
39407
39407
  this.aiAdapterLoadStarted = true;
39408
- import('./praxisui-table-table-ai.adapter-C3v9KfLA.mjs')
39408
+ import('./praxisui-table-table-ai.adapter-C9990_QA.mjs')
39409
39409
  .then(({ TableAiAdapter }) => {
39410
39410
  this.aiAdapter = new TableAiAdapter(this);
39411
39411
  this.initializeAiAssistantController();
@@ -39555,7 +39555,7 @@ class PraxisTable {
39555
39555
  initializeAiAssistantController() {
39556
39556
  if (!this.aiAdapter || this.aiAssistantController)
39557
39557
  return;
39558
- import('./praxisui-table-table-agentic-authoring-turn-flow-DwXFfED2.mjs')
39558
+ import('./praxisui-table-table-agentic-authoring-turn-flow-C1M85Vv8.mjs')
39559
39559
  .then(({ TableAgenticAuthoringTurnFlow }) => {
39560
39560
  if (this.aiAssistantController || !this.aiAdapter)
39561
39561
  return;
@@ -744,9 +744,12 @@ class TableAgenticAuthoringTurnFlow {
744
744
  if (this.selectedRecordsCountForTurn > 0)
745
745
  return null;
746
746
  const normalizedPrompt = this.normalizeLabel(request.prompt ?? '');
747
- const hasSelectedRecordsContext = this.hasSelectedRecordsContext(contextHints);
748
747
  if (!this.selectedRecordReferentialRecordsPrompt(normalizedPrompt)
749
- && !(hasSelectedRecordsContext && this.selectedRecordExplicitSelectionPrompt(normalizedPrompt))) {
748
+ && !this.selectedRecordExplicitSelectionPrompt(normalizedPrompt)) {
749
+ return null;
750
+ }
751
+ if (!this.selectedRecordsContextExplicitlyEmpty(contextHints)
752
+ && !this.selectedRecordMissingSelectionQuestionRequested(normalizedPrompt)) {
750
753
  return null;
751
754
  }
752
755
  return {
@@ -780,11 +783,27 @@ class TableAgenticAuthoringTurnFlow {
780
783
  'selecionadas',
781
784
  ].some((token) => this.normalizedTextContainsApproxPhrase(normalizedPrompt, token));
782
785
  }
783
- hasSelectedRecordsContext(contextHints) {
786
+ selectedRecordMissingSelectionQuestionRequested(normalizedPrompt) {
787
+ return this.selectedRecordInformationalQuestionRequested(normalizedPrompt)
788
+ && this.selectedRecordPromptGroundsKnownFilterField(normalizedPrompt);
789
+ }
790
+ selectedRecordPromptGroundsKnownFilterField(normalizedPrompt) {
791
+ if (!normalizedPrompt)
792
+ return false;
793
+ return this.filterFieldCatalogEntries.some((entry) => [
794
+ entry.name,
795
+ entry.label,
796
+ ...entry.aliases,
797
+ ...entry.relatedColumnLabels,
798
+ ...entry.relatedColumnFields,
799
+ ].some((candidate) => this.promptContainsAnyVariant(normalizedPrompt, candidate)));
800
+ }
801
+ selectedRecordsContextExplicitlyEmpty(contextHints) {
784
802
  const authoringContract = this.toRecord(contextHints?.['authoringContract']);
785
803
  const consultativeContext = this.toRecord(authoringContract?.['consultativeContext']);
786
- return !!(this.toRecord(consultativeContext?.['selectedRecordsContext'])
787
- ?? this.toRecord(contextHints?.['selectedRecordsContext']));
804
+ const selectedRecordsContext = this.toRecord(consultativeContext?.['selectedRecordsContext'])
805
+ ?? this.toRecord(contextHints?.['selectedRecordsContext']);
806
+ return !!selectedRecordsContext && this.extractSelectedRecordsCount(contextHints) <= 0;
788
807
  }
789
808
  singleTopSelectedRecordQuestionField(candidates) {
790
809
  if (!candidates.length)
@@ -975,8 +994,18 @@ class TableAgenticAuthoringTurnFlow {
975
994
  return ['comum', 'igual', 'padrao', 'mesma', 'mesmo'].some((token) => (this.normalizedTextContainsApproxToken(normalizedPrompt, token)));
976
995
  }
977
996
  selectedRecordCommonQuestionAlsoRequestsFilter(normalizedPrompt) {
997
+ if (this.selectedRecordOperationalAudienceRequested(normalizedPrompt))
998
+ return true;
978
999
  return ['filtro', 'filtrar', 'filtre', 'filtra', 'aplique', 'aplicar', 'buscar', 'busque', 'procure', 'exportar', 'mostra', 'mostre', 'traz', 'traga', 'trazer', 'outro', 'outros', 'pega', 'pegue', 'acha', 'ache', 'encontra', 'encontre'].some((token) => (this.normalizedTextContainsApproxToken(normalizedPrompt, token)));
979
1000
  }
1001
+ selectedRecordOperationalAudienceRequested(normalizedPrompt) {
1002
+ if (!normalizedPrompt)
1003
+ return false;
1004
+ // Post-grounding bridge only: this distinguishes "show people/records like these"
1005
+ // from an informational field question. Canonical filterCandidates still decide
1006
+ // which field can be materialized.
1007
+ return /(^|\s)(gente|pessoas|pessoal)\s+com\s+(os\s+|as\s+)?(mesmos|mesmas|mesmo|mesma)\b/u.test(normalizedPrompt);
1008
+ }
980
1009
  selectedRecordRequestedCommonField(normalizedPrompt, row) {
981
1010
  const candidates = Object.keys(row)
982
1011
  .map((field) => ({
@@ -1260,6 +1289,7 @@ class TableAgenticAuthoringTurnFlow {
1260
1289
  'outro',
1261
1290
  'outros',
1262
1291
  ].some((token) => this.normalizedTextContainsApproxToken(normalized, token))
1292
+ || this.selectedRecordOperationalAudienceRequested(normalized)
1263
1293
  || this.selectedRecordPrepositionalFilterRequested(normalized)
1264
1294
  || this.selectedRecordProximityFilterRequested(normalized);
1265
1295
  }
@@ -1,7 +1,7 @@
1
1
  import { firstValueFrom } from 'rxjs';
2
2
  import { BaseAiAdapter, createComponentAuthoringContext } from '@praxisui/ai';
3
3
  import { deepMerge } from '@praxisui/core';
4
- import { z as TABLE_COMPONENT_EDIT_PLAN_OPERATION_IDS, k as PRAXIS_TABLE_AUTHORING_MANIFEST, T as TABLE_AI_CAPABILITIES, R as coerceTableComponentEditPlans, W as compileTableComponentEditPlans, G as TASK_PRESETS, $ as getTableComponentEditPlanCapabilities, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, y as TABLE_COMPONENT_EDIT_PLAN_KIND } from './praxisui-table-praxisui-table-BR_mqg11.mjs';
4
+ import { z as TABLE_COMPONENT_EDIT_PLAN_OPERATION_IDS, k as PRAXIS_TABLE_AUTHORING_MANIFEST, T as TABLE_AI_CAPABILITIES, R as coerceTableComponentEditPlans, W as compileTableComponentEditPlans, G as TASK_PRESETS, $ as getTableComponentEditPlanCapabilities, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, y as TABLE_COMPONENT_EDIT_PLAN_KIND } from './praxisui-table-praxisui-table-DwRKqWNs.mjs';
5
5
 
6
6
  const TABLE_COMPONENT_CONTEXT_PACK = {
7
7
  version: 'v1',
@@ -1 +1 @@
1
- export { A as AnalyticsTableConfigAdapterService, a as AnalyticsTableContractService, b as AnalyticsTableStatsApiService, B as BOOLEAN_PRESETS, c as BehaviorConfigEditorComponent, C as CURRENCY_PRESETS, d as ColumnsConfigEditorComponent, D as DATE_PRESETS, e as DataFormatterComponent, f as DataFormattingService, F as FORMULA_TEMPLATES, g as FilterConfigService, h as FilterSettingsComponent, i as FormulaGeneratorService, J as JsonConfigEditorComponent, M as MessagesLocalizationEditorComponent, N as NUMBER_PRESETS, P as PERCENTAGE_PRESETS, j as PRAXIS_FILTER_COMPONENT_METADATA, k as PRAXIS_TABLE_AUTHORING_MANIFEST, l as PRAXIS_TABLE_COMPONENT_METADATA, m as PraxisFilter, n as PraxisFilterWidgetConfigEditor, o as PraxisTable, p as PraxisTableConfigEditor, q as PraxisTableInlineAuthoringEditorComponent, r as PraxisTableToolbar, s as PraxisTableWidgetConfigEditor, S as STRING_PRESETS, T as TABLE_AI_CAPABILITIES, t as TABLE_COMPONENT_AI_CAPABILITIES, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, y as TABLE_COMPONENT_EDIT_PLAN_KIND, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, G as TASK_PRESETS, H as TableDefaultsProvider, I as TableRulesEditorComponent, K as ToolbarActionsEditorComponent, V as ValueMappingEditorComponent, L as VisualFormulaBuilderComponent, O as buildTableApplyPlan, Q as coerceTableComponentEditPlan, R as coerceTableComponentEditPlans, U as compileTableComponentEditPlan, W as compileTableComponentEditPlans, X as createTableAuthoringDocument, Y as getActionId, Z as getEnum, _ as getTableCapabilities, $ as getTableComponentEditPlanCapabilities, a0 as isTableRendererSupportedByRichContentP0, a1 as mapTableRendererToRichContentP0, a2 as normalizeTableAuthoringDocument, a3 as parseLegacyOrTableDocument, a4 as providePraxisFilterMetadata, a5 as providePraxisTableMetadata, a6 as serializeTableAuthoringDocument, a7 as toCanonicalTableConfig, a8 as validateTableAuthoringDocument } from './praxisui-table-praxisui-table-BR_mqg11.mjs';
1
+ export { A as AnalyticsTableConfigAdapterService, a as AnalyticsTableContractService, b as AnalyticsTableStatsApiService, B as BOOLEAN_PRESETS, c as BehaviorConfigEditorComponent, C as CURRENCY_PRESETS, d as ColumnsConfigEditorComponent, D as DATE_PRESETS, e as DataFormatterComponent, f as DataFormattingService, F as FORMULA_TEMPLATES, g as FilterConfigService, h as FilterSettingsComponent, i as FormulaGeneratorService, J as JsonConfigEditorComponent, M as MessagesLocalizationEditorComponent, N as NUMBER_PRESETS, P as PERCENTAGE_PRESETS, j as PRAXIS_FILTER_COMPONENT_METADATA, k as PRAXIS_TABLE_AUTHORING_MANIFEST, l as PRAXIS_TABLE_COMPONENT_METADATA, m as PraxisFilter, n as PraxisFilterWidgetConfigEditor, o as PraxisTable, p as PraxisTableConfigEditor, q as PraxisTableInlineAuthoringEditorComponent, r as PraxisTableToolbar, s as PraxisTableWidgetConfigEditor, S as STRING_PRESETS, T as TABLE_AI_CAPABILITIES, t as TABLE_COMPONENT_AI_CAPABILITIES, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, y as TABLE_COMPONENT_EDIT_PLAN_KIND, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, G as TASK_PRESETS, H as TableDefaultsProvider, I as TableRulesEditorComponent, K as ToolbarActionsEditorComponent, V as ValueMappingEditorComponent, L as VisualFormulaBuilderComponent, O as buildTableApplyPlan, Q as coerceTableComponentEditPlan, R as coerceTableComponentEditPlans, U as compileTableComponentEditPlan, W as compileTableComponentEditPlans, X as createTableAuthoringDocument, Y as getActionId, Z as getEnum, _ as getTableCapabilities, $ as getTableComponentEditPlanCapabilities, a0 as isTableRendererSupportedByRichContentP0, a1 as mapTableRendererToRichContentP0, a2 as normalizeTableAuthoringDocument, a3 as parseLegacyOrTableDocument, a4 as providePraxisFilterMetadata, a5 as providePraxisTableMetadata, a6 as serializeTableAuthoringDocument, a7 as toCanonicalTableConfig, a8 as validateTableAuthoringDocument } from './praxisui-table-praxisui-table-DwRKqWNs.mjs';
package/package.json CHANGED
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "name": "@praxisui/table",
3
- "version": "8.0.0-beta.36",
3
+ "version": "8.0.0-beta.37",
4
4
  "description": "Advanced data table for Angular (Praxis UI) with editing, filtering, sorting, virtualization, and settings panel integration.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0",
7
7
  "@angular/core": "^21.0.0",
8
- "@praxisui/ai": "^8.0.0-beta.36",
9
- "@praxisui/core": "^8.0.0-beta.36",
10
- "@praxisui/dynamic-fields": "^8.0.0-beta.36",
11
- "@praxisui/dynamic-form": "^8.0.0-beta.36",
12
- "@praxisui/metadata-editor": "^8.0.0-beta.36",
13
- "@praxisui/rich-content": "^8.0.0-beta.36",
14
- "@praxisui/settings-panel": "^8.0.0-beta.36",
15
- "@praxisui/table-rule-builder": "^8.0.0-beta.36",
8
+ "@praxisui/ai": "^8.0.0-beta.37",
9
+ "@praxisui/core": "^8.0.0-beta.37",
10
+ "@praxisui/dynamic-fields": "^8.0.0-beta.37",
11
+ "@praxisui/dynamic-form": "^8.0.0-beta.37",
12
+ "@praxisui/metadata-editor": "^8.0.0-beta.37",
13
+ "@praxisui/rich-content": "^8.0.0-beta.37",
14
+ "@praxisui/settings-panel": "^8.0.0-beta.37",
15
+ "@praxisui/table-rule-builder": "^8.0.0-beta.37",
16
16
  "@angular/cdk": "^21.0.0",
17
17
  "@angular/forms": "^21.0.0",
18
18
  "@angular/material": "^21.0.0",
19
19
  "@angular/router": "^21.0.0",
20
- "@praxisui/dialog": "^8.0.0-beta.36",
20
+ "@praxisui/dialog": "^8.0.0-beta.37",
21
21
  "rxjs": "~7.8.0"
22
22
  },
23
23
  "dependencies": {