diff --git a/packages/devextreme-angular/src/ui/pivot-grid/index.ts b/packages/devextreme-angular/src/ui/pivot-grid/index.ts index efc7d1d563ec..828c85c30f4e 100644 --- a/packages/devextreme-angular/src/ui/pivot-grid/index.ts +++ b/packages/devextreme-angular/src/ui/pivot-grid/index.ts @@ -48,9 +48,9 @@ import { DxoLoadPanelModule } from 'devextreme-angular/ui/nested'; import { DxoScrollingModule } from 'devextreme-angular/ui/nested'; import { DxoStateStoringModule } from 'devextreme-angular/ui/nested'; +import { DxoPivotGridEmbeddedFieldChooserTextsModule } from 'devextreme-angular/ui/pivot-grid/nested'; import { DxoPivotGridExportModule } from 'devextreme-angular/ui/pivot-grid/nested'; import { DxoPivotGridFieldChooserModule } from 'devextreme-angular/ui/pivot-grid/nested'; -import { DxoPivotGridFieldChooserTextsModule } from 'devextreme-angular/ui/pivot-grid/nested'; import { DxoPivotGridFieldPanelModule } from 'devextreme-angular/ui/pivot-grid/nested'; import { DxoPivotGridFieldPanelTextsModule } from 'devextreme-angular/ui/pivot-grid/nested'; import { DxoPivotGridHeaderFilterModule } from 'devextreme-angular/ui/pivot-grid/nested'; @@ -895,9 +895,9 @@ export class DxPivotGridComponent extends DxComponent implements OnDestroy, OnCh DxoLoadPanelModule, DxoScrollingModule, DxoStateStoringModule, + DxoPivotGridEmbeddedFieldChooserTextsModule, DxoPivotGridExportModule, DxoPivotGridFieldChooserModule, - DxoPivotGridFieldChooserTextsModule, DxoPivotGridFieldPanelModule, DxoPivotGridFieldPanelTextsModule, DxoPivotGridHeaderFilterModule, @@ -922,9 +922,9 @@ export class DxPivotGridComponent extends DxComponent implements OnDestroy, OnCh DxoLoadPanelModule, DxoScrollingModule, DxoStateStoringModule, + DxoPivotGridEmbeddedFieldChooserTextsModule, DxoPivotGridExportModule, DxoPivotGridFieldChooserModule, - DxoPivotGridFieldChooserTextsModule, DxoPivotGridFieldPanelModule, DxoPivotGridFieldPanelTextsModule, DxoPivotGridHeaderFilterModule, diff --git a/packages/devextreme-angular/src/ui/pivot-grid/nested/field-chooser-texts.ts b/packages/devextreme-angular/src/ui/pivot-grid/nested/embedded-field-chooser-texts.ts similarity index 84% rename from packages/devextreme-angular/src/ui/pivot-grid/nested/field-chooser-texts.ts rename to packages/devextreme-angular/src/ui/pivot-grid/nested/embedded-field-chooser-texts.ts index 0081de32be60..581207f847f7 100644 --- a/packages/devextreme-angular/src/ui/pivot-grid/nested/field-chooser-texts.ts +++ b/packages/devextreme-angular/src/ui/pivot-grid/nested/embedded-field-chooser-texts.ts @@ -23,13 +23,13 @@ import { NestedOption } from 'devextreme-angular/core'; @Component({ - selector: 'dxo-pivot-grid-field-chooser-texts', + selector: 'dxo-pivot-grid-embedded-field-chooser-texts', template: '', styles: [''], imports: [ DxIntegrationModule ], providers: [NestedOptionHost] }) -export class DxoPivotGridFieldChooserTextsComponent extends NestedOption implements OnDestroy, OnInit { +export class DxoPivotGridEmbeddedFieldChooserTextsComponent extends NestedOption implements OnDestroy, OnInit { @Input() get allFields(): string { return this._getOption('allFields'); @@ -97,10 +97,10 @@ export class DxoPivotGridFieldChooserTextsComponent extends NestedOption impleme @NgModule({ imports: [ - DxoPivotGridFieldChooserTextsComponent + DxoPivotGridEmbeddedFieldChooserTextsComponent ], exports: [ - DxoPivotGridFieldChooserTextsComponent + DxoPivotGridEmbeddedFieldChooserTextsComponent ], }) -export class DxoPivotGridFieldChooserTextsModule { } +export class DxoPivotGridEmbeddedFieldChooserTextsModule { } diff --git a/packages/devextreme-angular/src/ui/pivot-grid/nested/index.ts b/packages/devextreme-angular/src/ui/pivot-grid/nested/index.ts index 3d6d81094573..7b35c59209af 100644 --- a/packages/devextreme-angular/src/ui/pivot-grid/nested/index.ts +++ b/packages/devextreme-angular/src/ui/pivot-grid/nested/index.ts @@ -1,5 +1,5 @@ +export * from './embedded-field-chooser-texts'; export * from './export'; -export * from './field-chooser-texts'; export * from './field-chooser'; export * from './field-panel-texts'; export * from './field-panel'; diff --git a/packages/devextreme-metadata/make-integration-metadata.ts b/packages/devextreme-metadata/make-integration-metadata.ts index 14ac44d14eae..8212aa40bd7b 100644 --- a/packages/devextreme-metadata/make-integration-metadata.ts +++ b/packages/devextreme-metadata/make-integration-metadata.ts @@ -113,6 +113,10 @@ Imd.makeMetadata({ forcedName: 'treeListToolbarItem', }), + addMetadata('ui/pivot_grid:dxPivotGridOptions.fieldChooser.texts', { + forcedName: 'embeddedFieldChooserTexts', + }), + replaceTypes(/.+/, ['core/element:UserDefinedElement'], ['any']), removeMembers(['core/element:DxElement', 'core/element:UserDefinedElement'], 'any'), diff --git a/packages/devextreme-react/src/pivot-grid.ts b/packages/devextreme-react/src/pivot-grid.ts index e7c6fa0eae86..22ae796605ab 100644 --- a/packages/devextreme-react/src/pivot-grid.ts +++ b/packages/devextreme-react/src/pivot-grid.ts @@ -73,6 +73,28 @@ const PivotGrid = memo( ) as (props: React.PropsWithChildren & { ref?: Ref }) => ReactElement | null; +// owners: +// FieldChooser +type IEmbeddedFieldChooserTextsProps = React.PropsWithChildren<{ + allFields?: string; + columnFields?: string; + dataFields?: string; + filterFields?: string; + rowFields?: string; +}> +const _componentEmbeddedFieldChooserTexts = (props: IEmbeddedFieldChooserTextsProps) => { + return React.createElement(NestedOption, { + ...props, + elementDescriptor: { + OptionName: "texts", + }, + }); +}; + +const EmbeddedFieldChooserTexts = Object.assign(_componentEmbeddedFieldChooserTexts, { + componentType: "option", +}); + // owners: // PivotGrid type IExportProps = React.PropsWithChildren<{ @@ -116,7 +138,7 @@ const _componentFieldChooser = (props: IFieldChooserProps) => { elementDescriptor: { OptionName: "fieldChooser", ExpectedChildren: { - fieldChooserTexts: { optionName: "texts", isCollectionItem: false }, + embeddedFieldChooserTexts: { optionName: "texts", isCollectionItem: false }, texts: { optionName: "texts", isCollectionItem: false } }, }, @@ -127,28 +149,6 @@ const FieldChooser = Object.assign -const _componentFieldChooserTexts = (props: IFieldChooserTextsProps) => { - return React.createElement(NestedOption, { - ...props, - elementDescriptor: { - OptionName: "texts", - }, - }); -}; - -const FieldChooserTexts = Object.assign(_componentFieldChooserTexts, { - componentType: "option", -}); - // owners: // PivotGrid type IFieldPanelProps = React.PropsWithChildren<{ @@ -422,12 +422,12 @@ export { PivotGrid, IPivotGridOptions, PivotGridRef, + EmbeddedFieldChooserTexts, + IEmbeddedFieldChooserTextsProps, Export, IExportProps, FieldChooser, IFieldChooserProps, - FieldChooserTexts, - IFieldChooserTextsProps, FieldPanel, IFieldPanelProps, FieldPanelTexts, diff --git a/packages/devextreme-vue/src/pivot-grid.ts b/packages/devextreme-vue/src/pivot-grid.ts index 75169fb9ee02..3dff93c444ab 100644 --- a/packages/devextreme-vue/src/pivot-grid.ts +++ b/packages/devextreme-vue/src/pivot-grid.ts @@ -193,6 +193,31 @@ prepareComponentConfig(componentConfig); const DxPivotGrid = defineComponent(componentConfig); +const DxEmbeddedFieldChooserTextsConfig = { + emits: { + "update:isActive": null, + "update:hoveredElement": null, + "update:allFields": null, + "update:columnFields": null, + "update:dataFields": null, + "update:filterFields": null, + "update:rowFields": null, + }, + props: { + allFields: String, + columnFields: String, + dataFields: String, + filterFields: String, + rowFields: String + } +}; + +prepareConfigurationComponentConfig(DxEmbeddedFieldChooserTextsConfig); + +const DxEmbeddedFieldChooserTexts = defineComponent(DxEmbeddedFieldChooserTextsConfig); + +(DxEmbeddedFieldChooserTexts as any).$_optionName = "texts"; + const DxExportConfig = { emits: { "update:isActive": null, @@ -243,35 +268,10 @@ const DxFieldChooser = defineComponent(DxFieldChooserConfig); (DxFieldChooser as any).$_optionName = "fieldChooser"; (DxFieldChooser as any).$_expectedChildren = { - fieldChooserTexts: { isCollectionItem: false, optionName: "texts" }, + embeddedFieldChooserTexts: { isCollectionItem: false, optionName: "texts" }, texts: { isCollectionItem: false, optionName: "texts" } }; -const DxFieldChooserTextsConfig = { - emits: { - "update:isActive": null, - "update:hoveredElement": null, - "update:allFields": null, - "update:columnFields": null, - "update:dataFields": null, - "update:filterFields": null, - "update:rowFields": null, - }, - props: { - allFields: String, - columnFields: String, - dataFields: String, - filterFields: String, - rowFields: String - } -}; - -prepareConfigurationComponentConfig(DxFieldChooserTextsConfig); - -const DxFieldChooserTexts = defineComponent(DxFieldChooserTextsConfig); - -(DxFieldChooserTexts as any).$_optionName = "texts"; - const DxFieldPanelConfig = { emits: { "update:isActive": null, @@ -588,9 +588,9 @@ const DxTexts = defineComponent(DxTextsConfig); export default DxPivotGrid; export { DxPivotGrid, + DxEmbeddedFieldChooserTexts, DxExport, DxFieldChooser, - DxFieldChooserTexts, DxFieldPanel, DxFieldPanelTexts, DxHeaderFilter,