@talxis/base-controls 1.2605.1 → 1.2605.2-alpha
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/components/DatasetControl/EditColumns/OptionText/OptionText.js +1 -2
- package/dist/components/DatasetControl/EditColumns/OptionText/OptionText.js.map +1 -1
- package/dist/components/Lookup/Lookup.js +4 -1
- package/dist/components/Lookup/Lookup.js.map +1 -1
- package/dist/components/Lookup/hooks/useLookup.d.ts +4 -0
- package/dist/components/Lookup/translations.d.ts +4 -0
- package/dist/components/Lookup/translations.js +4 -0
- package/dist/components/Lookup/translations.js.map +1 -1
- package/dist/components/TaskGrid/TaskGrid.js +3 -4
- package/dist/components/TaskGrid/TaskGrid.js.map +1 -1
- package/dist/components/TaskGrid/TaskGridDatasetControl.d.ts +16 -5
- package/dist/components/TaskGrid/TaskGridDatasetControl.js +32 -13
- package/dist/components/TaskGrid/TaskGridDatasetControl.js.map +1 -1
- package/dist/components/TaskGrid/TaskGridDatasetControlFactory.d.ts +3 -2
- package/dist/components/TaskGrid/TaskGridDatasetControlFactory.js +7 -5
- package/dist/components/TaskGrid/TaskGridDatasetControlFactory.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/AddTaskButton.js +3 -8
- package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/AddTaskButton.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/cell-renderers/lookup-many/LookupManyCellRenderer.d.ts +7 -0
- package/dist/components/TaskGrid/components/grid/cell-renderers/lookup-many/LookupManyCellRenderer.js +99 -0
- package/dist/components/TaskGrid/components/grid/cell-renderers/lookup-many/LookupManyCellRenderer.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/cell-renderers/lookup-many/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/cell-renderers/lookup-many/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/PercentComplete.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/PercentComplete.js +2 -1
- package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/PercentComplete.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/index.js +1 -1
- package/dist/components/TaskGrid/components/grid/grid-customizer/GridCustomizer.d.ts +2 -7
- package/dist/components/TaskGrid/components/grid/grid-customizer/GridCustomizer.js +44 -18
- package/dist/components/TaskGrid/components/grid/grid-customizer/GridCustomizer.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/grid-drag-handler/GridDragHandler.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/lookup-many/LookupMany.d.ts +13 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/LookupMany.js +82 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/LookupMany.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/ColorfulLookupMany.d.ts +5 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/ColorfulLookupMany.js +12 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/ColorfulLookupMany.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/index.d.ts +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/index.js +13 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/multi-value-container/MultiValueContainer.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/multi-value-container/MultiValueContainer.js +17 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/multi-value-container/MultiValueContainer.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/multi-value-container/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/multi-value-container/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/Option.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/Option.js +17 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/Option.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/index.js +2 -0
- package/dist/components/TaskGrid/{data-providers/custom-columns-data-provider → components/grid/lookup-many/colorful-lookup-many/components/option}/index.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/styles.d.ts +14 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/styles.js +21 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/components/option/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/context.d.ts +4 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/context.js +9 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/context.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/colorful-lookup-many/index.js +2 -0
- package/dist/components/TaskGrid/{data-providers/saved-query-data-provider → components/grid/lookup-many/colorful-lookup-many}/index.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/lookup-many/components/index.d.ts +10 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/index.js +15 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/MultiValueContainer.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/MultiValueContainer.js +15 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/MultiValueContainer.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/styles.d.ts +18 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/styles.js +24 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-container/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/MultiValueLabel.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/MultiValueLabel.js +21 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/MultiValueLabel.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/styles.d.ts +15 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/styles.js +22 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-label/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-remove/MultiValueRemove.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-remove/MultiValueRemove.js +18 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-remove/MultiValueRemove.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-remove/styles.d.ts +22 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-remove/styles.js +28 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/components/multi-value-remove/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/context.d.ts +4 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/context.js +9 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/context.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/index.d.ts +4 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/index.js +5 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/PeopleLookupMany.d.ts +5 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/PeopleLookupMany.js +12 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/PeopleLookupMany.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/index.d.ts +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/index.js +13 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/MultiValueLabel.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/MultiValueLabel.js +17 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/MultiValueLabel.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/styles.d.ts +5 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/styles.js +6 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/multi-value-label/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/Option.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/Option.js +16 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/Option.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/styles.d.ts +10 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/styles.js +11 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/components/option/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/context.d.ts +4 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/context.js +9 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/context.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/index.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/index.js +2 -0
- package/dist/components/TaskGrid/components/grid/lookup-many/people-lookup-many/index.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/MultiRecordSelector.d.ts +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/MultiRecordSelector.js +27 -14
- package/dist/components/TaskGrid/components/grid/multi-record-selector/MultiRecordSelector.js.map +1 -1
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-container/MultiValueContainer.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-container/MultiValueContainer.js +13 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-container/MultiValueContainer.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-container/styles.d.ts +18 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-container/styles.js +24 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-container/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-label/MultiValueLabel.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-label/MultiValueLabel.js +19 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-label/MultiValueLabel.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-label/styles.d.ts +12 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-label/styles.js +19 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-label/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-remove/MultiValueRemove.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-remove/MultiValueRemove.js +16 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-remove/MultiValueRemove.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-remove/styles.d.ts +22 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-remove/styles.js +28 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/multi-value-remove/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/option/Option.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/components/option/styles.d.ts +16 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/styles.d.ts +3 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/styles.js +15 -0
- package/dist/components/TaskGrid/components/grid/multi-record-selector/styles.js.map +1 -0
- package/dist/components/TaskGrid/components/header/Header.js +5 -4
- package/dist/components/TaskGrid/components/header/Header.js.map +1 -1
- package/dist/components/TaskGrid/components/header/edit-columns/EditColumns.js.map +1 -1
- package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/CreateViewDialog.js.map +1 -1
- package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManager.js.map +1 -1
- package/dist/components/TaskGrid/context.d.ts +5 -4
- package/dist/components/TaskGrid/context.js.map +1 -1
- package/dist/components/TaskGrid/extensions/LexoRank.d.ts +7 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseCustomColumnsStrategy.d.ts +69 -0
- package/dist/components/TaskGrid/{data-providers/custom-columns-data-provider/TalxisCustomColumnsDataProviderStrategy.js → extensions/dataverse/DataverseCustomColumnsStrategy.js} +35 -3
- package/dist/components/TaskGrid/extensions/dataverse/DataverseCustomColumnsStrategy.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseGridCustomizerStrategy.d.ts +20 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseGridCustomizerStrategy.js +42 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseGridCustomizerStrategy.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseSavedQueryStrategy.d.ts +49 -0
- package/dist/components/TaskGrid/{data-providers/saved-query-data-provider/TalxisSavedQueryDataProvider.js → extensions/dataverse/DataverseSavedQueryStrategy.js} +37 -15
- package/dist/components/TaskGrid/extensions/dataverse/DataverseSavedQueryStrategy.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseTaskGridDescriptor.d.ts +100 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseTaskGridDescriptor.js +145 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseTaskGridDescriptor.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseTaskStrategy.d.ts +122 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseTaskStrategy.js +453 -0
- package/dist/components/TaskGrid/extensions/dataverse/DataverseTaskStrategy.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/index.d.ts +5 -0
- package/dist/components/TaskGrid/extensions/dataverse/index.js +6 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/LookupManyHandler.d.ts +49 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/LookupManyHandler.js +145 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/LookupManyHandler.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/cell-renderer/FetchXmlDataProviderFactory.d.ts +11 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/cell-renderer/FetchXmlDataProviderFactory.js +16 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/cell-renderer/FetchXmlDataProviderFactory.js.map +1 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/cell-renderer/FetchXmlLookupManyCellRenderer.d.ts +2 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/cell-renderer/FetchXmlLookupManyCellRenderer.js +29 -0
- package/dist/components/TaskGrid/extensions/dataverse/lookup-many/cell-renderer/FetchXmlLookupManyCellRenderer.js.map +1 -0
- package/dist/components/TaskGrid/interfaces.d.ts +30 -12
- package/dist/components/TaskGrid/labels.d.ts +1 -15
- package/dist/components/TaskGrid/labels.js +2 -16
- package/dist/components/TaskGrid/labels.js.map +1 -1
- package/dist/components/TaskGrid/{data-providers/custom-columns-data-provider → providers/custom-columns}/CustomColumnsDataProvider.d.ts +5 -1
- package/dist/components/TaskGrid/providers/custom-columns/CustomColumnsDataProvider.js.map +1 -0
- package/dist/components/TaskGrid/providers/custom-columns/index.d.ts +1 -0
- package/dist/components/TaskGrid/providers/custom-columns/index.js +2 -0
- package/dist/components/TaskGrid/providers/custom-columns/index.js.map +1 -0
- package/dist/components/TaskGrid/providers/index.d.ts +3 -0
- package/dist/components/TaskGrid/providers/index.js +4 -0
- package/dist/components/TaskGrid/providers/index.js.map +1 -0
- package/dist/components/TaskGrid/{data-providers/saved-query-data-provider → providers/saved-query}/SavedQueryDataProvider.d.ts +13 -8
- package/dist/components/TaskGrid/{data-providers/saved-query-data-provider → providers/saved-query}/SavedQueryDataProvider.js +87 -50
- package/dist/components/TaskGrid/providers/saved-query/SavedQueryDataProvider.js.map +1 -0
- package/dist/components/TaskGrid/providers/saved-query/index.d.ts +1 -0
- package/dist/components/TaskGrid/providers/saved-query/index.js +2 -0
- package/dist/components/TaskGrid/providers/saved-query/index.js.map +1 -0
- package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/TaskDataProvider.d.ts +15 -22
- package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/TaskDataProvider.js +35 -26
- package/dist/components/TaskGrid/providers/task/TaskDataProvider.js.map +1 -0
- package/dist/components/TaskGrid/providers/task/index.js.map +1 -0
- package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/record-tree/RecordTree.js +2 -0
- package/dist/components/TaskGrid/providers/task/record-tree/RecordTree.js.map +1 -0
- package/dist/components/TaskGrid/providers/task/record-tree/index.js.map +1 -0
- package/dist/components/TaskGrid/providers/task/record-tree/patchDataBuilderPrepare.js.map +1 -0
- package/dist/index.d.ts +177 -165
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/localization/LocalizationService.d.ts +15 -0
- package/dist/utils/localization/LocalizationService.js +17 -0
- package/dist/utils/localization/LocalizationService.js.map +1 -0
- package/dist/utils/localization/index.d.ts +1 -0
- package/dist/utils/localization/index.js +2 -0
- package/dist/utils/localization/index.js.map +1 -0
- package/package.json +5 -4
- package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/CustomColumnsDataProvider.js.map +0 -1
- package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/TalxisCustomColumnsDataProviderStrategy.d.ts +0 -33
- package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/TalxisCustomColumnsDataProviderStrategy.js.map +0 -1
- package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/index.d.ts +0 -2
- package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/index.js +0 -3
- package/dist/components/TaskGrid/data-providers/index.d.ts +0 -3
- package/dist/components/TaskGrid/data-providers/index.js +0 -6
- package/dist/components/TaskGrid/data-providers/saved-query-data-provider/SavedQueryDataProvider.js.map +0 -1
- package/dist/components/TaskGrid/data-providers/saved-query-data-provider/TalxisSavedQueryDataProvider.d.ts +0 -21
- package/dist/components/TaskGrid/data-providers/saved-query-data-provider/TalxisSavedQueryDataProvider.js.map +0 -1
- package/dist/components/TaskGrid/data-providers/saved-query-data-provider/index.d.ts +0 -2
- package/dist/components/TaskGrid/data-providers/saved-query-data-provider/index.js +0 -3
- package/dist/components/TaskGrid/data-providers/task-data-provider/TaskDataProvider.js.map +0 -1
- package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/RecordTree.js.map +0 -1
- package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/patchDataBuilderPrepare.js.map +0 -1
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → components/grid/cell-renderers/lookup-many}/index.js.map +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider/record-tree → components/grid/lookup-many/colorful-lookup-many/components/multi-value-container}/index.js.map +0 -0
- /package/dist/components/TaskGrid/{data-providers → extensions/dataverse}/index.js.map +0 -0
- /package/dist/components/TaskGrid/{data-providers/custom-columns-data-provider → providers/custom-columns}/CustomColumnsDataProvider.js +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/index.d.ts +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/index.js +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/record-tree/RecordTree.d.ts +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/record-tree/index.d.ts +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/record-tree/index.js +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/record-tree/patchDataBuilderPrepare.d.ts +0 -0
- /package/dist/components/TaskGrid/{data-providers/task-data-provider → providers/task}/record-tree/patchDataBuilderPrepare.js +0 -0
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useMemo } from 'react';
|
|
3
3
|
import { getOptionTextStyles } from './styles.js';
|
|
4
|
-
import { Text } from '@fluentui/react';
|
|
5
4
|
|
|
6
5
|
const OptionText = (props) => {
|
|
7
6
|
const styles = useMemo(() => getOptionTextStyles(), []);
|
|
8
|
-
return jsx(
|
|
7
|
+
return jsx("span", { className: styles.optionText, children: props.children });
|
|
9
8
|
};
|
|
10
9
|
|
|
11
10
|
export { OptionText };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionText.js","sources":["../../../../../src/components/DatasetControl/EditColumns/OptionText/OptionText.tsx"],"sourcesContent":["import { IColumn } from \"@talxis/client-libraries\";\nimport { useMemo } from \"react\";\nimport { GroupBase, OptionProps } from \"react-select\";\nimport { getOptionTextStyles } from \"./styles\";\
|
|
1
|
+
{"version":3,"file":"OptionText.js","sources":["../../../../../src/components/DatasetControl/EditColumns/OptionText/OptionText.tsx"],"sourcesContent":["import { IColumn } from \"@talxis/client-libraries\";\nimport { useMemo } from \"react\";\nimport { GroupBase, OptionProps } from \"react-select\";\nimport { getOptionTextStyles } from \"./styles\";\n\nexport const OptionText = (props: React.PropsWithChildren<OptionProps<IColumn, boolean, GroupBase<IColumn>>>) => {\n const styles = useMemo(() => getOptionTextStyles(), []);\n return <span className={styles.optionText}>{props.children}</span>\n}"],"names":["_jsx"],"mappings":";;;;AAKa,MAAA,UAAU,GAAG,CAAC,KAAiF,KAAI;AAC5G,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,mBAAmB,EAAE,EAAE,EAAE,CAAC,CAAC;IACxD,OAAOA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,UAAU,EAAA,QAAA,EAAG,KAAK,CAAC,QAAQ,EAAA,CAAQ,CAAA;AACtE;;;;"}
|
|
@@ -94,6 +94,9 @@ const Lookup = (props) => {
|
|
|
94
94
|
const isComponentActive = () => {
|
|
95
95
|
return mouseOver || isFocused;
|
|
96
96
|
};
|
|
97
|
+
const getDisplayName = () => {
|
|
98
|
+
return props.parameters.value.attributes.DisplayName ?? labels.record();
|
|
99
|
+
};
|
|
97
100
|
const getSecondaryName = async (result) => {
|
|
98
101
|
const metadata = await entities.find(x => x.entityName === result.entityType)?.metadata;
|
|
99
102
|
const attribute = result.layout?.Rows?.[0]?.Cells?.[1]?.Name;
|
|
@@ -177,7 +180,7 @@ const Lookup = (props) => {
|
|
|
177
180
|
if (context.mode.isControlDisabled) {
|
|
178
181
|
return;
|
|
179
182
|
}
|
|
180
|
-
setPlaceholder(`${labels.placeholder()} ${
|
|
183
|
+
setPlaceholder(`${labels.placeholder()} ${getDisplayName()}`);
|
|
181
184
|
},
|
|
182
185
|
onMouseLeave: () => {
|
|
183
186
|
setPlaceholder("---");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lookup.js","sources":["../../../src/components/Lookup/Lookup.tsx"],"sourcesContent":["\nimport { ILayout, ILookup, IMetadata } from \"./interfaces\";\nimport { useLookup } from \"./hooks/useLookup\";\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { ThemeProvider } from \"@fluentui/react\";\nimport { IItemProps, TagPicker } from \"@talxis/react-components\";\nimport { TargetSelector } from \"./components/TargetSelector\";\nimport { useMouseOver } from \"../../hooks/useMouseOver\";\nimport { getLookupStyles, getSuggestionsCalloutStyles } from \"./styles\";\nimport { IBasePicker } from \"@fluentui/react/lib/components/pickers/BasePicker.types\";\nimport { ITag } from \"@fluentui/react/lib/components/pickers/TagPicker/TagPicker.types\";\nimport { RecordCreator } from \"./components/RecordCreator\";\nimport { useFocusIn } from \"../../hooks/useFocusIn\";\nimport { useControlSizing } from \"../../hooks/useControlSizing\";\nimport dayjs from \"dayjs\";\n\nexport const Lookup = (props: ILookup) => {\n const context = props.context;\n const ref = useRef<HTMLDivElement>(null);\n const componentRef = useRef<IBasePicker<ITag>>(null);\n const itemLimit = props.parameters.MultipleEnabled?.raw === true ? Infinity : 1\n const { height } = useControlSizing(props.context.mode);\n const [value, entities, labels, records, selectEntity, getSearchResults, theme] = useLookup(props);\n const styles = getLookupStyles(theme, itemLimit === 1, height);\n const suggestionsCalloutTheme = props.context.fluentDesignLanguage?.applicationTheme ?? theme;\n const suggestionsCalloutStyles = useMemo(() => getSuggestionsCalloutStyles(suggestionsCalloutTheme), [suggestionsCalloutTheme])\n const mouseOver = useMouseOver(ref);\n const isFocused = useFocusIn(ref, 100);\n const firstRenderRef = useRef(true);\n const shouldFocusRef = useRef(false);\n const [placeholder, setPlaceholder] = useState('---');\n const onOverrideComponentProps = props.onOverrideComponentProps ?? ((props) => props);\n\n\n useEffect(() => {\n if (firstRenderRef.current) {\n firstRenderRef.current = false;\n return;\n }\n //@ts-ignore\n if (componentRef.current.state.suggestionsVisible) {\n //if the suggestions callout is open and the selected target changes, refresh the results\n forceSearch();\n }\n }, [entities])\n\n useEffect(() => {\n const onKeyPress = (ev: KeyboardEvent) => {\n if (context.mode.isControlDisabled) {\n return;\n }\n if (ev.key === 'Backspace') {\n const picker = ref.current?.querySelector('[class*=\"TALXIS__tag-picker__root\"]');\n if ((document.activeElement === picker) && value.length === 1) {\n records.select(undefined);\n setTimeout(() => {\n componentRef.current?.focusInput()\n }, 200)\n }\n }\n }\n document.addEventListener('keydown', onKeyPress)\n return () => {\n document.removeEventListener('keydown', onKeyPress);\n }\n }, [value]);\n\n useEffect(() => {\n if (props.parameters.AutoFocus?.raw === true) {\n focus();\n }\n }, []);\n\n const focus = () => {\n if (componentRef.current?.items?.length === itemLimit) {\n const el = ref.current?.querySelector(':scope>div') as HTMLDivElement;\n el?.click();\n el?.focus();\n return;\n }\n componentRef.current?.focusInput();\n }\n\n const forceSearch = async () => {\n //@ts-ignore - We need to use internal methods to show and fill the suggestions on entity change\n componentRef.current.suggestionStore.updateSuggestions([]);\n //@ts-ignore - ^^same as above\n componentRef.current.setState({\n suggestionsVisible: true,\n suggestionsLoading: true,\n });\n //@ts-ignore - ^^same as above\n const results = await onResolveSuggestions(componentRef.current.input.current.value)\n //@ts-ignore - ^^same as above\n componentRef.current.updateSuggestionsList(results);\n //@ts-ignore - ^^same above\n componentRef.current.setState({\n isMostRecentlyUsedVisible: false,\n suggestionsVisible: true,\n moreSuggestionsAvailable: false,\n });\n }\n\n const isComponentActive = () => {\n return mouseOver || isFocused;\n }\n\n const getSecondaryName = async (result: ComponentFramework.LookupValue & {\n entityData: {\n [key: string]: any;\n };\n layout: ILayout;\n }): Promise<string | undefined> => {\n const metadata = await entities.find(x => x.entityName === result.entityType)?.metadata;\n const attribute: string | undefined = result.layout?.Rows?.[0]?.Cells?.[1]?.Name;\n //polymorphic, selected all\n if (!entities.find(x => x.selected)) {\n return metadata?.DisplayName;\n }\n else if (metadata?.LogicalName && attribute) {\n let targetEntityName = metadata.LogicalName;\n let targetAttribute = attribute;\n //checking for attributes pointing to related entity attribute, given by convention of using dot as separator\n if (attribute.includes(\".\")) {\n targetEntityName = result.layout.Rows.find(x => x.Cells.find(y => y.Name === attribute))?.Cells?.find(y => y.Name === attribute)?.RelatedEntityName || metadata.LogicalName;\n targetAttribute = attribute.split(\".\")[1]\n }\n const entityMetadata: ComponentFramework.PropertyHelper.EntityMetadata = await window.Xrm.Utility.getEntityMetadata(targetEntityName, [targetAttribute]);\n const attributetype: string = entityMetadata.Attributes.get(targetAttribute).AttributeTypeName;\n let primaryName: string;\n switch (attributetype) {\n case \"lookup\":\n case \"partylist\":\n case \"owner\":\n case \"customer\":\n primaryName = result.entityData[`_${targetAttribute}_value@OData.Community.Display.V1.FormattedValue`];\n break;\n case \"optionset\":\n case \"picklist\":\n case \"state\":\n case \"status\":\n case \"boolean\":\n case \"integer\":\n case \"bigint\":\n case \"decimal\":\n case \"money\":\n //TODO: Introduce user formatting, this approach takes format from application user setting\n primaryName = result.entityData[`${targetAttribute}@OData.Community.Display.V1.FormattedValue`];\n break;\n case \"datetime\":\n primaryName = props.context.formatting.formatTime(dayjs(result.entityData[attribute]).toDate(), 1);\n break;\n default:\n primaryName = result.entityData[attribute];\n };\n return primaryName;\n }\n }\n\n const onResolveSuggestions = async (filter: string, selectedItems?: IItemProps[] | undefined): Promise<IItemProps[]> => {\n //TODO: onResolveSuggestions gets called when the record gets selected resulting in unnecessary call\n const results = await getSearchResults(filter);\n const suggestions: IItemProps[] = [];\n for (const result of results) {\n if (selectedItems?.find(x => x.key === result.id)) {\n continue;\n }\n suggestions.push({\n key: result.id,\n text: result.name,\n secondaryText: await getSecondaryName(result),\n 'data-entity': result.entityType\n })\n }\n return suggestions;\n }\n\n const componentProps = onOverrideComponentProps({\n ref: componentRef,\n readOnly: context.mode.isControlDisabled,\n resolveDelay: 200,\n stackItems: itemLimit === 1,\n errorMessage: props.parameters.value.errorMessage,\n hideErrorMessage: !props.parameters.ShowErrorMessage?.raw,\n pickerCalloutProps: {\n layerProps: {\n eventBubblingEnabled: true\n },\n className: suggestionsCalloutStyles.suggestionsCallout,\n theme: suggestionsCalloutTheme,\n },\n inputProps: {\n placeholder: placeholder,\n onMouseEnter: () => {\n if (context.mode.isControlDisabled) {\n return;\n }\n setPlaceholder(`${labels.placeholder()} ${props.parameters.value.attributes.DisplayName}`);\n },\n onMouseLeave: () => {\n setPlaceholder(\"---\");\n }\n\n },\n pickerSuggestionsProps: {\n loadingText: labels.searching(),\n theme: suggestionsCalloutTheme,\n noResultsFoundText: labels.noRecordsFound(),\n className: suggestionsCalloutStyles.suggestionsContainer,\n // @ts-ignore\n suggestionsHeaderText: (\n <>\n {props.parameters.IsInlineNewEnabled?.raw !== false && (\n <RecordCreator labels={labels} entities={entities} onCreateRecord={records.create} />\n )}\n {props.parameters.value.attributes.Targets.length > 1 && (\n <TargetSelector\n labels={labels}\n entities={entities}\n onEntitySelected={(entityName) => {\n selectEntity(entityName);\n }}\n />\n )}\n </>\n )\n },\n transparent: itemLimit === 1,\n onChange: (items) => {\n records.select(\n items?.map((item) => {\n return {\n entityType: item['data-entity'],\n id: item.key,\n name: item.text\n };\n })\n );\n },\n searchBtnProps: {\n key: 'search',\n iconProps: {\n iconName: 'Search'\n },\n showOnlyOnHover: true\n },\n selectedItems: value.map((lookup) => {\n return {\n key: lookup.id,\n text: lookup.name || labels.noName(),\n 'data-entity': lookup.entityType,\n 'data-navigation-enabled': props.parameters.EnableNavigation?.raw !== false,\n onClick: () => {\n if (props.parameters.EnableNavigation?.raw === false) {\n return;\n }\n context.navigation.openForm({\n entityName: lookup.entityType,\n entityId: lookup.id\n });\n },\n deleteButtonProps:\n isComponentActive() || itemLimit > 1\n ? {\n key: 'delete',\n iconProps: {\n iconName: 'Cancel',\n },\n onClick: () => {\n shouldFocusRef.current = false;\n records.deselect(lookup);\n setTimeout(() => {\n focus();\n }, 200);\n }\n }\n : undefined\n };\n }),\n itemLimit: itemLimit,\n onEmptyResolveSuggestions: !context.mode.isControlDisabled ? (selectedItems) => onResolveSuggestions(\"\", selectedItems as IItemProps[]) as any : undefined,\n onResolveSuggestions: onResolveSuggestions,\n });\n\n return (\n <ThemeProvider applyTo=\"none\" theme={theme} className={`talxis__lookupControl ${styles.root}`} ref={ref}>\n <TagPicker {...componentProps} />\n </ThemeProvider>\n );\n};"],"names":["_jsxs","_Fragment","_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Lookup.js","sources":["../../../src/components/Lookup/Lookup.tsx"],"sourcesContent":["\nimport { ILayout, ILookup, IMetadata } from \"./interfaces\";\nimport { useLookup } from \"./hooks/useLookup\";\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { ThemeProvider } from \"@fluentui/react\";\nimport { IItemProps, TagPicker } from \"@talxis/react-components\";\nimport { TargetSelector } from \"./components/TargetSelector\";\nimport { useMouseOver } from \"../../hooks/useMouseOver\";\nimport { getLookupStyles, getSuggestionsCalloutStyles } from \"./styles\";\nimport { IBasePicker } from \"@fluentui/react/lib/components/pickers/BasePicker.types\";\nimport { ITag } from \"@fluentui/react/lib/components/pickers/TagPicker/TagPicker.types\";\nimport { RecordCreator } from \"./components/RecordCreator\";\nimport { useFocusIn } from \"../../hooks/useFocusIn\";\nimport { useControlSizing } from \"../../hooks/useControlSizing\";\nimport dayjs from \"dayjs\";\n\nexport const Lookup = (props: ILookup) => {\n const context = props.context;\n const ref = useRef<HTMLDivElement>(null);\n const componentRef = useRef<IBasePicker<ITag>>(null);\n const itemLimit = props.parameters.MultipleEnabled?.raw === true ? Infinity : 1\n const { height } = useControlSizing(props.context.mode);\n const [value, entities, labels, records, selectEntity, getSearchResults, theme] = useLookup(props);\n const styles = getLookupStyles(theme, itemLimit === 1, height);\n const suggestionsCalloutTheme = props.context.fluentDesignLanguage?.applicationTheme ?? theme;\n const suggestionsCalloutStyles = useMemo(() => getSuggestionsCalloutStyles(suggestionsCalloutTheme), [suggestionsCalloutTheme])\n const mouseOver = useMouseOver(ref);\n const isFocused = useFocusIn(ref, 100);\n const firstRenderRef = useRef(true);\n const shouldFocusRef = useRef(false);\n const [placeholder, setPlaceholder] = useState('---');\n const onOverrideComponentProps = props.onOverrideComponentProps ?? ((props) => props);\n\n\n useEffect(() => {\n if (firstRenderRef.current) {\n firstRenderRef.current = false;\n return;\n }\n //@ts-ignore\n if (componentRef.current.state.suggestionsVisible) {\n //if the suggestions callout is open and the selected target changes, refresh the results\n forceSearch();\n }\n }, [entities])\n\n useEffect(() => {\n const onKeyPress = (ev: KeyboardEvent) => {\n if (context.mode.isControlDisabled) {\n return;\n }\n if (ev.key === 'Backspace') {\n const picker = ref.current?.querySelector('[class*=\"TALXIS__tag-picker__root\"]');\n if ((document.activeElement === picker) && value.length === 1) {\n records.select(undefined);\n setTimeout(() => {\n componentRef.current?.focusInput()\n }, 200)\n }\n }\n }\n document.addEventListener('keydown', onKeyPress)\n return () => {\n document.removeEventListener('keydown', onKeyPress);\n }\n }, [value]);\n\n useEffect(() => {\n if (props.parameters.AutoFocus?.raw === true) {\n focus();\n }\n }, []);\n\n const focus = () => {\n if (componentRef.current?.items?.length === itemLimit) {\n const el = ref.current?.querySelector(':scope>div') as HTMLDivElement;\n el?.click();\n el?.focus();\n return;\n }\n componentRef.current?.focusInput();\n }\n\n const forceSearch = async () => {\n //@ts-ignore - We need to use internal methods to show and fill the suggestions on entity change\n componentRef.current.suggestionStore.updateSuggestions([]);\n //@ts-ignore - ^^same as above\n componentRef.current.setState({\n suggestionsVisible: true,\n suggestionsLoading: true,\n });\n //@ts-ignore - ^^same as above\n const results = await onResolveSuggestions(componentRef.current.input.current.value)\n //@ts-ignore - ^^same as above\n componentRef.current.updateSuggestionsList(results);\n //@ts-ignore - ^^same above\n componentRef.current.setState({\n isMostRecentlyUsedVisible: false,\n suggestionsVisible: true,\n moreSuggestionsAvailable: false,\n });\n }\n\n const isComponentActive = () => {\n return mouseOver || isFocused;\n }\n\n const getDisplayName = () => {\n return props.parameters.value.attributes.DisplayName ?? labels.record();\n }\n\n const getSecondaryName = async (result: ComponentFramework.LookupValue & {\n entityData: {\n [key: string]: any;\n };\n layout: ILayout;\n }): Promise<string | undefined> => {\n const metadata = await entities.find(x => x.entityName === result.entityType)?.metadata;\n const attribute: string | undefined = result.layout?.Rows?.[0]?.Cells?.[1]?.Name;\n //polymorphic, selected all\n if (!entities.find(x => x.selected)) {\n return metadata?.DisplayName;\n }\n else if (metadata?.LogicalName && attribute) {\n let targetEntityName = metadata.LogicalName;\n let targetAttribute = attribute;\n //checking for attributes pointing to related entity attribute, given by convention of using dot as separator\n if (attribute.includes(\".\")) {\n targetEntityName = result.layout.Rows.find(x => x.Cells.find(y => y.Name === attribute))?.Cells?.find(y => y.Name === attribute)?.RelatedEntityName || metadata.LogicalName;\n targetAttribute = attribute.split(\".\")[1]\n }\n const entityMetadata: ComponentFramework.PropertyHelper.EntityMetadata = await window.Xrm.Utility.getEntityMetadata(targetEntityName, [targetAttribute]);\n const attributetype: string = entityMetadata.Attributes.get(targetAttribute).AttributeTypeName;\n let primaryName: string;\n switch (attributetype) {\n case \"lookup\":\n case \"partylist\":\n case \"owner\":\n case \"customer\":\n primaryName = result.entityData[`_${targetAttribute}_value@OData.Community.Display.V1.FormattedValue`];\n break;\n case \"optionset\":\n case \"picklist\":\n case \"state\":\n case \"status\":\n case \"boolean\":\n case \"integer\":\n case \"bigint\":\n case \"decimal\":\n case \"money\":\n //TODO: Introduce user formatting, this approach takes format from application user setting\n primaryName = result.entityData[`${targetAttribute}@OData.Community.Display.V1.FormattedValue`];\n break;\n case \"datetime\":\n primaryName = props.context.formatting.formatTime(dayjs(result.entityData[attribute]).toDate(), 1);\n break;\n default:\n primaryName = result.entityData[attribute];\n };\n return primaryName;\n }\n }\n\n const onResolveSuggestions = async (filter: string, selectedItems?: IItemProps[] | undefined): Promise<IItemProps[]> => {\n //TODO: onResolveSuggestions gets called when the record gets selected resulting in unnecessary call\n const results = await getSearchResults(filter);\n const suggestions: IItemProps[] = [];\n for (const result of results) {\n if (selectedItems?.find(x => x.key === result.id)) {\n continue;\n }\n suggestions.push({\n key: result.id,\n text: result.name,\n secondaryText: await getSecondaryName(result),\n 'data-entity': result.entityType\n })\n }\n return suggestions;\n }\n\n const componentProps = onOverrideComponentProps({\n ref: componentRef,\n readOnly: context.mode.isControlDisabled,\n resolveDelay: 200,\n stackItems: itemLimit === 1,\n errorMessage: props.parameters.value.errorMessage,\n hideErrorMessage: !props.parameters.ShowErrorMessage?.raw,\n pickerCalloutProps: {\n layerProps: {\n eventBubblingEnabled: true\n },\n className: suggestionsCalloutStyles.suggestionsCallout,\n theme: suggestionsCalloutTheme,\n },\n inputProps: {\n placeholder: placeholder,\n onMouseEnter: () => {\n if (context.mode.isControlDisabled) {\n return;\n }\n setPlaceholder(`${labels.placeholder()} ${getDisplayName()}`);\n },\n onMouseLeave: () => {\n setPlaceholder(\"---\");\n }\n\n },\n pickerSuggestionsProps: {\n loadingText: labels.searching(),\n theme: suggestionsCalloutTheme,\n noResultsFoundText: labels.noRecordsFound(),\n className: suggestionsCalloutStyles.suggestionsContainer,\n // @ts-ignore\n suggestionsHeaderText: (\n <>\n {props.parameters.IsInlineNewEnabled?.raw !== false && (\n <RecordCreator labels={labels} entities={entities} onCreateRecord={records.create} />\n )}\n {props.parameters.value.attributes.Targets.length > 1 && (\n <TargetSelector\n labels={labels}\n entities={entities}\n onEntitySelected={(entityName) => {\n selectEntity(entityName);\n }}\n />\n )}\n </>\n )\n },\n transparent: itemLimit === 1,\n onChange: (items) => {\n records.select(\n items?.map((item) => {\n return {\n entityType: item['data-entity'],\n id: item.key,\n name: item.text\n };\n })\n );\n },\n searchBtnProps: {\n key: 'search',\n iconProps: {\n iconName: 'Search'\n },\n showOnlyOnHover: true\n },\n selectedItems: value.map((lookup) => {\n return {\n key: lookup.id,\n text: lookup.name || labels.noName(),\n 'data-entity': lookup.entityType,\n 'data-navigation-enabled': props.parameters.EnableNavigation?.raw !== false,\n onClick: () => {\n if (props.parameters.EnableNavigation?.raw === false) {\n return;\n }\n context.navigation.openForm({\n entityName: lookup.entityType,\n entityId: lookup.id\n });\n },\n deleteButtonProps:\n isComponentActive() || itemLimit > 1\n ? {\n key: 'delete',\n iconProps: {\n iconName: 'Cancel',\n },\n onClick: () => {\n shouldFocusRef.current = false;\n records.deselect(lookup);\n setTimeout(() => {\n focus();\n }, 200);\n }\n }\n : undefined\n };\n }),\n itemLimit: itemLimit,\n onEmptyResolveSuggestions: !context.mode.isControlDisabled ? (selectedItems) => onResolveSuggestions(\"\", selectedItems as IItemProps[]) as any : undefined,\n onResolveSuggestions: onResolveSuggestions,\n });\n\n return (\n <ThemeProvider applyTo=\"none\" theme={theme} className={`talxis__lookupControl ${styles.root}`} ref={ref}>\n <TagPicker {...componentProps} />\n </ThemeProvider>\n );\n};"],"names":["_jsxs","_Fragment","_jsx"],"mappings":"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"}
|
|
@@ -31,6 +31,10 @@ export declare const useLookup: (props: ILookup) => [ComponentFramework.LookupVa
|
|
|
31
31
|
1033: string;
|
|
32
32
|
1029: string;
|
|
33
33
|
};
|
|
34
|
+
record: {
|
|
35
|
+
1033: string;
|
|
36
|
+
1029: string;
|
|
37
|
+
};
|
|
34
38
|
}>>>, {
|
|
35
39
|
create: (entityName: string) => void;
|
|
36
40
|
select: (record: ComponentFramework.LookupValue[] | undefined) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.js","sources":["../../../src/components/Lookup/translations.ts"],"sourcesContent":["export const lookupTranslations = {\n search: {\n 1033: \"Search\",\n 1029: \"Vyhledejte\"\n },\n newRecord: {\n 1033: \"New record\",\n 1029: \"Nový záznam\"\n },\n searching: {\n 1033: \"Searching...\",\n 1029: \"Hledám...\"\n },\n noRecordsFound: {\n 1033: \"No records found\",\n 1029: \"Nebyly nalezeny žádné záznamy\"\n },\n resultsFrom: {\n 1033: \"Results from:\",\n 1029: \"Výsledky z:\"\n },\n noName: {\n 1033: \"(No Name)\",\n 1029: \"(Bez názvu)\"\n },\n placeholder: {\n 1033: \"Search\",\n 1029: \"Vyhledejte\"\n }\n}"],"names":[],"mappings":"AAAa,MAAA,kBAAkB,GAAG;AAC9B,IAAA,MAAM,EAAE;AACJ,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,YAAY;AACrB,KAAA;AACD,IAAA,SAAS,EAAE;AACP,QAAA,IAAI,EAAE,YAAY;AAClB,QAAA,IAAI,EAAE,aAAa;AACtB,KAAA;AACD,IAAA,SAAS,EAAE;AACP,QAAA,IAAI,EAAE,cAAc;AACpB,QAAA,IAAI,EAAE,WAAW;AACpB,KAAA;AACD,IAAA,cAAc,EAAE;AACZ,QAAA,IAAI,EAAE,kBAAkB;AACxB,QAAA,IAAI,EAAE,+BAA+B;AACxC,KAAA;AACD,IAAA,WAAW,EAAE;AACT,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,IAAI,EAAE,aAAa;AACtB,KAAA;AACD,IAAA,MAAM,EAAE;AACJ,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,IAAI,EAAE,aAAa;AACtB,KAAA;AACD,IAAA,WAAW,EAAE;AACT,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,YAAY;AACrB,KAAA;;;;;"}
|
|
1
|
+
{"version":3,"file":"translations.js","sources":["../../../src/components/Lookup/translations.ts"],"sourcesContent":["export const lookupTranslations = {\n search: {\n 1033: \"Search\",\n 1029: \"Vyhledejte\"\n },\n newRecord: {\n 1033: \"New record\",\n 1029: \"Nový záznam\"\n },\n searching: {\n 1033: \"Searching...\",\n 1029: \"Hledám...\"\n },\n noRecordsFound: {\n 1033: \"No records found\",\n 1029: \"Nebyly nalezeny žádné záznamy\"\n },\n resultsFrom: {\n 1033: \"Results from:\",\n 1029: \"Výsledky z:\"\n },\n noName: {\n 1033: \"(No Name)\",\n 1029: \"(Bez názvu)\"\n },\n placeholder: {\n 1033: \"Search\",\n 1029: \"Vyhledejte\"\n },\n record: {\n 1033: \"Record\",\n 1029: \"Záznam\"\n }\n}"],"names":[],"mappings":"AAAa,MAAA,kBAAkB,GAAG;AAC9B,IAAA,MAAM,EAAE;AACJ,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,YAAY;AACrB,KAAA;AACD,IAAA,SAAS,EAAE;AACP,QAAA,IAAI,EAAE,YAAY;AAClB,QAAA,IAAI,EAAE,aAAa;AACtB,KAAA;AACD,IAAA,SAAS,EAAE;AACP,QAAA,IAAI,EAAE,cAAc;AACpB,QAAA,IAAI,EAAE,WAAW;AACpB,KAAA;AACD,IAAA,cAAc,EAAE;AACZ,QAAA,IAAI,EAAE,kBAAkB;AACxB,QAAA,IAAI,EAAE,+BAA+B;AACxC,KAAA;AACD,IAAA,WAAW,EAAE;AACT,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,IAAI,EAAE,aAAa;AACtB,KAAA;AACD,IAAA,MAAM,EAAE;AACJ,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,IAAI,EAAE,aAAa;AACtB,KAAA;AACD,IAAA,WAAW,EAAE;AACT,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,YAAY;AACrB,KAAA;AACD,IAAA,MAAM,EAAE;AACJ,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,QAAQ;AACjB,KAAA;;;;;"}
|
|
@@ -5,10 +5,11 @@ import { useRef } from 'react';
|
|
|
5
5
|
import { PcfContext, LocalizationServiceContext, AgGridLicenseKeyContext, TaskGridComponentsContext, DatasetControlContext, TaskDataProviderContext, TaskGridDescriptorContext, RootElementIdContext } from './context.js';
|
|
6
6
|
import { useTheme } from '@fluentui/react';
|
|
7
7
|
import { getDatasetControlStyles } from './styles.js';
|
|
8
|
-
import { TASK_GRID_LABELS
|
|
8
|
+
import { TASK_GRID_LABELS } from './labels.js';
|
|
9
9
|
import { TaskGridDatasetControlFactory } from './TaskGridDatasetControlFactory.js';
|
|
10
10
|
import { Header } from './components/header/Header.js';
|
|
11
11
|
import { TaskGridComponents } from './components/components.js';
|
|
12
|
+
import { LocalizationService } from '../../utils/localization/LocalizationService.js';
|
|
12
13
|
import { Grid } from './components/grid/Grid.js';
|
|
13
14
|
import { DatasetControl } from '../DatasetControl/DatasetControl.js';
|
|
14
15
|
|
|
@@ -19,9 +20,7 @@ const TaskGrid = (props) => {
|
|
|
19
20
|
const components = { ...TaskGridComponents, ...props.components };
|
|
20
21
|
const pcfContextRef = useRef(props.pcfContext);
|
|
21
22
|
pcfContextRef.current = props.pcfContext;
|
|
22
|
-
const
|
|
23
|
-
labelsRef.current = { ...TASK_GRID_LABELS, ...props.labels };
|
|
24
|
-
const localizationService = React.useMemo(() => new LocalizationService(() => labelsRef.current), []);
|
|
23
|
+
const localizationService = React.useMemo(() => new LocalizationService({ ...TASK_GRID_LABELS, ...props.labels }), []);
|
|
25
24
|
const [instanceState, setInstanceState] = React.useState(null);
|
|
26
25
|
const createDatasetControlInstance = async () => {
|
|
27
26
|
setInstanceState(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskGrid.js","sources":["../../../src/components/TaskGrid/TaskGrid.tsx"],"sourcesContent":["import { useEventEmitter } from \"../../hooks/useEventEmitter\"\nimport { IDatasetControlEvents } from \"../../utils/dataset-control\";\nimport { useRef } from \"react\";\nimport * as React from \"react\";\nimport { AgGridLicenseKeyContext, DatasetControlContext, LocalizationServiceContext, PcfContext, RootElementIdContext, TaskDataProviderContext, TaskGridComponentsContext, TaskGridDescriptorContext, usePcfContext } from \"./context\";\nimport { DatasetControl as DatasetControlRenderer } from \"../DatasetControl\";\nimport { useTheme } from \"@fluentui/react\";\nimport { getDatasetControlStyles } from \"./styles\";\nimport { Grid } from \"./components/grid\";\nimport { ITaskDataProvider } from \"./
|
|
1
|
+
{"version":3,"file":"TaskGrid.js","sources":["../../../src/components/TaskGrid/TaskGrid.tsx"],"sourcesContent":["import { useEventEmitter } from \"../../hooks/useEventEmitter\"\nimport { IDatasetControlEvents } from \"../../utils/dataset-control\";\nimport { useRef } from \"react\";\nimport * as React from \"react\";\nimport { AgGridLicenseKeyContext, DatasetControlContext, LocalizationServiceContext, PcfContext, RootElementIdContext, TaskDataProviderContext, TaskGridComponentsContext, TaskGridDescriptorContext, usePcfContext } from \"./context\";\nimport { DatasetControl as DatasetControlRenderer } from \"../DatasetControl\";\nimport { useTheme } from \"@fluentui/react\";\nimport { getDatasetControlStyles } from \"./styles\";\nimport { Grid } from \"./components/grid\";\nimport { ITaskDataProvider } from \"./providers/task\";\nimport { ITaskGridLabels } from \"./labels\";\nimport { TASK_GRID_LABELS } from \"./labels\";\nimport { ITaskGridState, TaskGridDatasetControlFactory } from \"./TaskGridDatasetControlFactory\";\nimport { Header } from \"./components/header/Header\";\nimport { ITaskGridComponents, TaskGridComponents } from \"./components/components\";\nimport { ITaskGridDescriptor, ITaskGridDatasetControl } from \"./interfaces\";\nimport { LocalizationService } from \"../../utils\";\n\ninterface ITaskGridProps {\n //should be replaced by Context API in future\n pcfContext: ComponentFramework.Context<any, any>;\n taskGridDescriptor: ITaskGridDescriptor;\n labels?: Partial<ITaskGridLabels>;\n components?: Partial<ITaskGridComponents>;\n}\n\ninterface IInternalTaskGridProps extends ITaskGridProps {\n datasetControl: ITaskGridDatasetControl;\n onRemountRequested: () => void;\n}\n\n//serves for keeping track of lifecycle\nexport const TaskGrid = (props: ITaskGridProps) => {\n const { taskGridDescriptor } = props;\n const stateRef = useRef<ITaskGridState>({});\n const components = { ...TaskGridComponents, ...props.components };\n const pcfContextRef = useRef(props.pcfContext);\n pcfContextRef.current = props.pcfContext;\n const localizationService = React.useMemo(() => new LocalizationService({ ...TASK_GRID_LABELS, ...props.labels }), []);\n\n const [instanceState, setInstanceState] = React.useState<{\n instance: ITaskGridDatasetControl;\n remountKey: number;\n } | null>(null);\n\n const createDatasetControlInstance = async () => {\n setInstanceState(null);\n const instance = await TaskGridDatasetControlFactory.createInstance({\n taskGridDescriptor,\n localizationService,\n state: stateRef.current,\n onGetPcfContext: () => pcfContextRef.current!,\n });\n setInstanceState(prev => ({ instance, remountKey: (prev?.remountKey ?? 0) + 1 }));\n };\n\n React.useEffect(() => {\n createDatasetControlInstance();\n }, []);\n\n if (!instanceState) {\n return components.onRenderSkeleton({\n height: taskGridDescriptor.onGetGridParameters?.().height ?? '400px'\n })\n }\n\n return (\n <PcfContext.Provider value={pcfContextRef.current}>\n <LocalizationServiceContext.Provider value={localizationService}>\n <AgGridLicenseKeyContext.Provider value={taskGridDescriptor.onGetAgGridLicenseKey?.() ?? null}>\n <TaskGridComponentsContext.Provider value={components}>\n <InternalTaskGridDatasetControl\n key={instanceState.remountKey}\n {...props}\n datasetControl={instanceState.instance}\n onRemountRequested={createDatasetControlInstance}\n />\n </TaskGridComponentsContext.Provider>\n </AgGridLicenseKeyContext.Provider>\n </LocalizationServiceContext.Provider>\n </PcfContext.Provider>\n );\n}\nconst InternalTaskGridDatasetControl = (props: IInternalTaskGridProps) => {\n const { datasetControl, onRemountRequested, taskGridDescriptor } = props;\n const theme = useTheme();\n const styles = React.useMemo(() => getDatasetControlStyles(theme), [theme]);\n const provider = datasetControl.getDataset().getDataProvider() as ITaskDataProvider;\n const rootElementId = `${datasetControl.getControlId()}-root`;\n\n useEventEmitter<IDatasetControlEvents>(datasetControl, 'onRemountRequested', onRemountRequested);\n\n React.useEffect(() => {\n datasetControl.getDataset().refresh();\n }, []);\n\n return <DatasetControlContext.Provider value={datasetControl}>\n <TaskDataProviderContext.Provider value={provider}>\n <TaskGridDescriptorContext.Provider value={taskGridDescriptor}>\n <RootElementIdContext.Provider value={rootElementId}>\n <DatasetControlRenderer\n onGetDatasetControlInstance={() => datasetControl}\n onGetControlComponent={Grid}\n onOverrideComponentProps={(props) => {\n return {\n ...props,\n onRender: (props, defaultRender) => {\n return defaultRender({\n ...props,\n container: {\n ...props.container,\n id: rootElementId,\n className: `${props.container.className} ${styles.datasetControlRoot}`\n },\n onRenderHeader: (props, defaultRender) => <Header headerProps={props} defaultRender={defaultRender} />\n })\n }\n }\n }} />\n </RootElementIdContext.Provider>\n </TaskGridDescriptorContext.Provider>\n </TaskDataProviderContext.Provider>\n </DatasetControlContext.Provider >\n}"],"names":["_jsx","DatasetControlRenderer"],"mappings":"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"}
|
|
@@ -3,10 +3,11 @@ import { IDatasetControlParameters } from "../DatasetControl";
|
|
|
3
3
|
import { IDatasetControlEvents } from "../../utils/dataset-control";
|
|
4
4
|
import { IEditColumns } from "../../utils/dataset-control/EditColumns";
|
|
5
5
|
import { IDataset, ICommand, EventEmitter, IDataProvider } from "@talxis/client-libraries";
|
|
6
|
-
import { ITaskDataProvider } from "./
|
|
7
|
-
import { ILocalizationService
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
6
|
+
import { ITaskDataProvider } from "./providers/task";
|
|
7
|
+
import { ILocalizationService } from "../../utils";
|
|
8
|
+
import { ITaskGridLabels } from "./labels";
|
|
9
|
+
import { ISavedQueryDataProvider } from "./providers/saved-query";
|
|
10
|
+
import { ICustomColumnsDataProvider } from "./providers/custom-columns/CustomColumnsDataProvider";
|
|
10
11
|
import { ITaskGridDatasetControl, ITaskGridDatasetControlParameters } from "./interfaces";
|
|
11
12
|
export declare class TaskGridDatasetControl extends EventEmitter<IDatasetControlEvents> implements ITaskGridDatasetControl {
|
|
12
13
|
private _dataset;
|
|
@@ -24,7 +25,13 @@ export declare class TaskGridDatasetControl extends EventEmitter<IDatasetControl
|
|
|
24
25
|
private _changeToQueryId;
|
|
25
26
|
constructor(parameters: ITaskGridDatasetControlParameters);
|
|
26
27
|
get editColumns(): IEditColumns;
|
|
27
|
-
getNativeColumns():
|
|
28
|
+
getNativeColumns(): {
|
|
29
|
+
path: string;
|
|
30
|
+
parentId: string;
|
|
31
|
+
subject: string;
|
|
32
|
+
stackRank: string;
|
|
33
|
+
stateCode: string;
|
|
34
|
+
};
|
|
28
35
|
getLocalizationService(): ILocalizationService<ITaskGridLabels>;
|
|
29
36
|
getControlId(): string;
|
|
30
37
|
isRowDraggingEnabled(): boolean;
|
|
@@ -35,6 +42,7 @@ export declare class TaskGridDatasetControl extends EventEmitter<IDatasetControl
|
|
|
35
42
|
isCustomColumnCreationEnabled(): boolean;
|
|
36
43
|
isCustomColumnEditingEnabled(): boolean;
|
|
37
44
|
isCustomColumnDeletionEnabled(): boolean;
|
|
45
|
+
isInlineCreateEnabled(): boolean;
|
|
38
46
|
isShowHierarchyToggleVisible(): boolean;
|
|
39
47
|
getInactiveTasksVisibility(): boolean;
|
|
40
48
|
isViewManagerEnabled(): boolean;
|
|
@@ -59,6 +67,9 @@ export declare class TaskGridDatasetControl extends EventEmitter<IDatasetControl
|
|
|
59
67
|
getDataset(): IDataset;
|
|
60
68
|
getDataProvider(): ITaskDataProvider;
|
|
61
69
|
getPcfContext(): ComponentFramework.Context<any>;
|
|
70
|
+
isTaskEditingEnabled(): boolean;
|
|
71
|
+
isTaskCreatingEnabled(): boolean;
|
|
72
|
+
isTaskDeletingEnabled(): boolean;
|
|
62
73
|
getParameters(): IDatasetControlParameters;
|
|
63
74
|
loadCommands(ids: string[]): Promise<void>;
|
|
64
75
|
retrieveRecordCommands(): ICommand[];
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EditColumns } from '../../utils/dataset-control/EditColumns.js';
|
|
2
2
|
import { EventEmitter, Operators, Filtering } from '@talxis/client-libraries';
|
|
3
3
|
import { Type } from '@talxis/client-libraries/dist/utils/fetch-xml/filter/Type';
|
|
4
|
+
import { PATH_COLUMN_NAME } from './providers/saved-query/SavedQueryDataProvider.js';
|
|
4
5
|
import { ErrorHelper } from '../../utils/error-handling/ErrorHelper.js';
|
|
5
6
|
|
|
6
7
|
const STATE_CODE_ACTIVE = 0;
|
|
@@ -47,7 +48,10 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
47
48
|
return new EditColumns({ datasetControl: this });
|
|
48
49
|
}
|
|
49
50
|
getNativeColumns() {
|
|
50
|
-
return
|
|
51
|
+
return {
|
|
52
|
+
...this._descriptor.onGetFieldMapping(),
|
|
53
|
+
path: PATH_COLUMN_NAME
|
|
54
|
+
};
|
|
51
55
|
}
|
|
52
56
|
getLocalizationService() {
|
|
53
57
|
return this._localizationService;
|
|
@@ -79,6 +83,9 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
79
83
|
isCustomColumnDeletionEnabled() {
|
|
80
84
|
return this._gridParameters.enableCustomColumnDeletion ?? true;
|
|
81
85
|
}
|
|
86
|
+
isInlineCreateEnabled() {
|
|
87
|
+
return this._gridParameters.enableInlineCreation ?? true;
|
|
88
|
+
}
|
|
82
89
|
isShowHierarchyToggleVisible() {
|
|
83
90
|
return this._gridParameters.enableShowHierarchyToggle ?? true;
|
|
84
91
|
}
|
|
@@ -101,7 +108,7 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
101
108
|
return this._gridParameters.enableSaveAsNewQuery ?? true;
|
|
102
109
|
}
|
|
103
110
|
isSaveQueryChangesEnabled() {
|
|
104
|
-
return this._gridParameters.
|
|
111
|
+
return this._gridParameters.enableSaveQueryChanges ?? true;
|
|
105
112
|
}
|
|
106
113
|
isUserQueriesFeatureEnabled() {
|
|
107
114
|
return this._gridParameters.enableUserQueries ?? true;
|
|
@@ -189,11 +196,24 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
189
196
|
getPcfContext() {
|
|
190
197
|
return this._getPcfContext();
|
|
191
198
|
}
|
|
199
|
+
isTaskEditingEnabled() {
|
|
200
|
+
return this._gridParameters.enableTaskEditing ?? true;
|
|
201
|
+
}
|
|
202
|
+
isTaskCreatingEnabled() {
|
|
203
|
+
if (!this.isTaskEditingEnabled())
|
|
204
|
+
return false;
|
|
205
|
+
return this._gridParameters.enableTaskCreation ?? true;
|
|
206
|
+
}
|
|
207
|
+
isTaskDeletingEnabled() {
|
|
208
|
+
if (!this.isTaskEditingEnabled())
|
|
209
|
+
return false;
|
|
210
|
+
return this._gridParameters.enableTaskDeletion ?? true;
|
|
211
|
+
}
|
|
192
212
|
getParameters() {
|
|
193
213
|
return {
|
|
194
214
|
Grid: this.getDataset(),
|
|
195
215
|
EnableEditing: {
|
|
196
|
-
raw: this.
|
|
216
|
+
raw: this.isTaskEditingEnabled()
|
|
197
217
|
},
|
|
198
218
|
EnableAutoSave: {
|
|
199
219
|
raw: true
|
|
@@ -258,6 +278,12 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
258
278
|
this._state.savedQuery = {
|
|
259
279
|
id: this._changeToQueryId
|
|
260
280
|
};
|
|
281
|
+
//@ts-ignore
|
|
282
|
+
if (this._state.AgGridState) {
|
|
283
|
+
//clean up AgGrid state as it might not be compatible with new query
|
|
284
|
+
//@ts-ignore
|
|
285
|
+
delete this._state.AgGridState;
|
|
286
|
+
}
|
|
261
287
|
}
|
|
262
288
|
else {
|
|
263
289
|
const currentQueryId = this._savedQueryDataProvider.getCurrentQuery().id;
|
|
@@ -274,18 +300,9 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
274
300
|
}
|
|
275
301
|
_loadState(state) {
|
|
276
302
|
let currentQuery = this._savedQueryDataProvider.getCurrentQuery();
|
|
277
|
-
if (state.savedQuery) {
|
|
278
|
-
currentQuery = {
|
|
279
|
-
...currentQuery,
|
|
280
|
-
...state.savedQuery,
|
|
281
|
-
};
|
|
282
|
-
}
|
|
283
|
-
else {
|
|
303
|
+
if (!state.savedQuery) {
|
|
284
304
|
state.savedQuery = currentQuery;
|
|
285
305
|
}
|
|
286
|
-
//some required columns might have been discared by edit columns
|
|
287
|
-
this._savedQueryDataProvider.includeRequiredColumns(currentQuery.columns);
|
|
288
|
-
this._savedQueryDataProvider.harmonizeColumns(currentQuery.columns);
|
|
289
306
|
//at this point current query might be missing required properties
|
|
290
307
|
let { filtering, sorting, columns, searchQuery, linking } = currentQuery;
|
|
291
308
|
this._dataProvider.setColumns(columns);
|
|
@@ -326,6 +343,8 @@ class TaskGridDatasetControl extends EventEmitter {
|
|
|
326
343
|
this._dataProvider.taskEvents.addEventListener('onBeforeTasksCreated', () => this._dataProvider.setLoading(true));
|
|
327
344
|
this._dataProvider.taskEvents.addEventListener('onAfterTasksCreated', () => this._dataProvider.setLoading(false));
|
|
328
345
|
this._dataProvider.taskEvents.addEventListener('onAfterTaskMoved', () => this._dataProvider.setLoading(false));
|
|
346
|
+
this._dataProvider.taskEvents.addEventListener('onBeforeDatasetItemOpened', () => this._dataProvider.setLoading(true));
|
|
347
|
+
this._dataProvider.taskEvents.addEventListener('onAfterDatasetItemOpened', () => this._dataProvider.setLoading(false));
|
|
329
348
|
this._savedQueryDataProvider.queryEvents.addEventListener('onAfterUserQueryCreated', (result) => this._onAfterUserQueryCreated(result));
|
|
330
349
|
this._savedQueryDataProvider.queryEvents.addEventListener('onAfterUserQueryUpdated', (result) => this._dataProvider.setLoading(false));
|
|
331
350
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskGridDatasetControl.js","sources":["../../../src/components/TaskGrid/TaskGridDatasetControl.ts"],"sourcesContent":["import { IDatasetControlParameters } from \"../DatasetControl\";\nimport { IDatasetControlEvents } from \"../../utils/dataset-control\";\nimport { EditColumns, IEditColumns } from \"../../utils/dataset-control/EditColumns\";\nimport { IDataset, ICommand, EventEmitter, IDataProvider, Operators, Filtering } from \"@talxis/client-libraries\";\nimport { IDeleteTasksResult, ITaskDataProvider } from \"./data-providers/task-data-provider\";\nimport { ILocalizationService, ITaskGridLabels } from \"./labels\";\nimport { ISavedQueryDataProvider } from \"./data-providers/saved-query-data-provider\";\nimport { ITaskGridState } from \"./TaskGridDatasetControlFactory\";\nimport { Type } from \"@talxis/client-libraries/dist/utils/fetch-xml/filter/Type\";\nimport { ICustomColumnsDataProvider } from \"./data-providers/custom-columns-data-provider/CustomColumnsDataProvider\";\nimport { ITaskGridDatasetControl, ITaskGridDescriptor, ITaskGridParameters, ITaskGridDatasetControlParameters } from \"./interfaces\";\nimport { ErrorHelper } from \"../../utils/error-handling\";\n\nconst STATE_CODE_ACTIVE = 0;\n\nexport class TaskGridDatasetControl extends EventEmitter<IDatasetControlEvents> implements ITaskGridDatasetControl {\n private _dataset: IDataset;\n private _descriptor: ITaskGridDescriptor;\n private _dataProvider: ITaskDataProvider;\n private _templateDataProvider?: IDataProvider;\n private _localizationService: ILocalizationService<ITaskGridLabels>;\n private _savedQueryDataProvider: ISavedQueryDataProvider;\n private _customColumnsDataProvider?: ICustomColumnsDataProvider;\n private _controlId: string;\n private _state: ITaskGridState;\n private _gridParameters: ITaskGridParameters;\n private _commands: ICommand[] = [];\n private _getPcfContext: () => ComponentFramework.Context<any, any>;\n private _changeToQueryId!: string;\n\n constructor(parameters: ITaskGridDatasetControlParameters) {\n super();\n this._dataset = parameters.dataset;\n this._dataProvider = this._dataset.getDataProvider() as ITaskDataProvider;\n this._descriptor = parameters.taskGridDescriptor;\n this._controlId = this._descriptor.onGetControlId?.() ?? `task-grid-dataset-control-${crypto.randomUUID()}`;\n this._localizationService = parameters.localizationService;\n this._savedQueryDataProvider = parameters.savedQueryDataProvider;\n this._customColumnsDataProvider = parameters.customColumnsDataProvider;\n this._templateDataProvider = parameters.templateDataProvider;\n this._state = parameters.state;\n this._gridParameters = this._descriptor.onGetGridParameters?.() ?? {};\n this._getPcfContext = parameters.onGetPcfContext;\n this._loadState(parameters.state);\n this.loadCommands([]);\n this._registerEventListeners();\n }\n\n public get editColumns(): IEditColumns {\n return new EditColumns({ datasetControl: this });\n }\n\n public getNativeColumns() {\n return this._descriptor.onGetNativeColumns();\n }\n\n public getLocalizationService() {\n return this._localizationService;\n }\n\n public getControlId() {\n return this._controlId;\n }\n\n public isRowDraggingEnabled(): boolean {\n return this._gridParameters.enableRowDragging ?? true;\n }\n\n public isEditColumnsScopeSelectorEnabled(): boolean {\n return this._gridParameters.enableEditColumnsScopeSelector ?? true;\n }\n\n public isTemplatingEnabled(): boolean {\n return !!this._templateDataProvider;\n }\n\n public isCustomColumnsEnabled(): boolean {\n return !!this._customColumnsDataProvider;\n }\n\n public isHideInactiveTasksToggleVisible(): boolean {\n return this._gridParameters.enableHideInactiveTasksToggle ?? true;\n }\n\n public isCustomColumnCreationEnabled(): boolean {\n return this._gridParameters.enableCustomColumnCreation ?? true;\n }\n \n public isCustomColumnEditingEnabled(): boolean {\n return this._gridParameters.enableCustomColumnEditing ?? true;\n }\n public isCustomColumnDeletionEnabled(): boolean {\n return this._gridParameters.enableCustomColumnDeletion ?? true;\n }\n\n public isShowHierarchyToggleVisible(): boolean {\n return this._gridParameters.enableShowHierarchyToggle ?? true;\n }\n\n public getInactiveTasksVisibility() {\n const stateCodeCondition = this._dataProvider.getFiltering()?.conditions?.find(condition => condition.attributeName === this.getNativeColumns().stateCode);\n switch (stateCodeCondition?.conditionOperator) {\n case Operators.In.Value:\n return stateCodeCondition.value?.includes('1') ?? false;\n case Operators.Equal.Value:\n return stateCodeCondition.value === '1';\n default: {\n return true;\n }\n }\n }\n \n public isViewManagerEnabled(): boolean {\n return this._gridParameters.enableQueryManager ?? true;\n }\n\n public isSaveQueryAsNewEnabled(): boolean {\n return this._gridParameters.enableSaveAsNewQuery ?? true;\n }\n\n public isSaveQueryChangesEnabled(): boolean {\n return this._gridParameters.enableSaveChangesToQuery ?? true;\n }\n\n public isUserQueriesFeatureEnabled(): boolean {\n return this._gridParameters.enableUserQueries ?? true;\n }\n\n public getSavedQueryDataProvider() {\n return this._savedQueryDataProvider;\n }\n\n public getTemplateDataProvider(): IDataProvider {\n if (!this._templateDataProvider) {\n throw new Error('This TaskGridDatasetControl does not have a template data provider');\n }\n return this._templateDataProvider;\n }\n\n\n public createUserQueryDataProvider(): IDataProvider {\n return this._descriptor.onCreateUserQueryDataProvider();\n }\n\n public getCustomColumnsDataProvider() {\n if (!this._customColumnsDataProvider) {\n throw new Error('This TaskGridDatasetControl does not have a custom columns data provider!');\n }\n return this._customColumnsDataProvider;\n }\n\n public toggleFlatList(enabled: boolean) {\n if (!this._state.savedQuery) {\n throw new Error('Cannot toggle flat list mode when there is no saved query in state');\n }\n this._state.savedQuery.isFlatListEnabled = enabled;\n const pathColumn = this._dataProvider.getColumnsMap()[this.getNativeColumns().path];\n pathColumn.isHidden = !enabled;\n pathColumn.order = -1;\n //update the columns to trigger column sort\n this._dataProvider.setColumns(this._dataProvider.getColumns());\n this._dataProvider.refresh();\n }\n\n public toggleHideInactiveTasks(hide: boolean) {\n const filtering = new Filtering(this._dataProvider);\n const stateCodeFilter = filtering.getColumnFilter(this.getNativeColumns().stateCode);\n stateCodeFilter.clear();\n\n if (hide) {\n const condition = stateCodeFilter.addCondition();\n condition.setOperator(Operators.Equal.Value);\n condition.setValue([STATE_CODE_ACTIVE]);\n }\n const filterExpression = filtering.getFilterExpression(Type.And.Value);\n if (filterExpression) {\n this._dataProvider.setFiltering(filterExpression);\n }\n this._dataProvider.refresh();\n }\n\n //we need to make sure that query gets saved into state\n public changeSavedQuery(queryId: string) {\n this._changeToQueryId = queryId;\n this.requestRemount();\n }\n\n public setInterceptor(event: any, interceptor: any): void {\n throw new Error(\"Method not implemented.\");\n }\n\n public isPaginationVisible(): boolean {\n return false;\n }\n public isRecordCountVisible(): boolean {\n return true\n }\n public isPageSizeSwitcherVisible(): boolean {\n return false;\n }\n public isQuickFindVisible(): boolean {\n return this._gridParameters.enableQuickFind ?? true;\n }\n public isAutoSaveEnabled(): boolean {\n return true;\n }\n public isRibbonVisible(): boolean {\n return true;\n }\n public getHeight(): string | null {\n return this._gridParameters.height ?? null;\n }\n public getDataset(): IDataset {\n return this._dataset;\n }\n public getDataProvider(): ITaskDataProvider {\n return this._dataProvider;\n }\n public getPcfContext(): ComponentFramework.Context<any> {\n return this._getPcfContext();\n }\n public getParameters(): IDatasetControlParameters {\n return {\n Grid: this.getDataset(),\n EnableEditing: {\n raw: this._dataProvider.isTaskEditingEnabled()\n },\n EnableAutoSave: {\n raw: true\n },\n EnableEditColumns: {\n raw: this._gridParameters.enableEditColumns ?? true\n },\n EnableZebra: {\n raw: false\n },\n EnableOptionSetColors: {\n raw: true\n },\n Height: {\n raw: this.getHeight()\n }\n }\n }\n public async loadCommands(ids: string[]): Promise<void> {\n this._commands = await this._dataProvider.retrieveRecordCommand({\n recordIds: ids,\n refreshAllRules: true\n });\n this.dispatchEvent('onRecordCommandsLoaded');\n }\n public retrieveRecordCommands(): ICommand[] {\n return this._commands;\n }\n public areCommandsLoaded(): boolean {\n return true;\n }\n public isEditColumnsVisible(): boolean {\n return true;\n }\n public isViewSwitcherVisible(): boolean {\n return false;\n }\n public isEditFiltersVisible(): boolean {\n return false;\n }\n public requestEditColumns(): void {\n throw new Error(\"Method not implemented.\");\n }\n public destroy(): void {\n this.saveState();\n this._dataProvider.destroy();\n this._savedQueryDataProvider.destroy();\n this._customColumnsDataProvider?.destroy();\n this._templateDataProvider?.destroy();\n }\n public requestRemount(): void {\n this.dispatchEvent('onRemountRequested');\n }\n public async init(): Promise<void> {\n return;\n }\n public getState(): ComponentFramework.Dictionary {\n return this._state;\n }\n public saveState(): void {\n if (this._changeToQueryId) {\n this._state.savedQuery = {\n id: this._changeToQueryId\n }\n }\n else {\n const currentQueryId = this._savedQueryDataProvider.getCurrentQuery().id;\n this._state.savedQuery = {\n ...this._savedQueryDataProvider.getSavedQuery(currentQueryId),\n filtering: this._dataProvider.getFiltering() ?? undefined,\n sorting: this._dataProvider.getSorting(),\n columns: this._dataProvider.getColumns(),\n searchQuery: this._dataProvider.getSearchQuery() ?? undefined,\n linking: this._dataProvider.getLinking(),\n isFlatListEnabled: this._dataProvider.isFlatListEnabled(),\n }\n }\n }\n\n private _loadState(state: ITaskGridState) {\n let currentQuery = this._savedQueryDataProvider.getCurrentQuery();\n if (state.savedQuery) {\n currentQuery = {\n ...currentQuery,\n ...state.savedQuery,\n }\n }\n else {\n state.savedQuery = currentQuery;\n }\n //some required columns might have been discared by edit columns\n this._savedQueryDataProvider.includeRequiredColumns(currentQuery.columns);\n this._savedQueryDataProvider.harmonizeColumns(currentQuery.columns);\n //at this point current query might be missing required properties\n let { filtering, sorting, columns, searchQuery, linking } = currentQuery;\n this._dataProvider.setColumns(columns);\n\n if (filtering) {\n this._dataProvider.setFiltering(filtering);\n }\n if (sorting) {\n this._dataProvider.setSorting(sorting);\n }\n if (linking) {\n this._dataProvider.setLinking(linking);\n }\n if (searchQuery) {\n this._dataProvider.setSearchQuery(searchQuery);\n }\n }\n\n private _onSelectedRecordsChanged(ids: string[]) {\n this.loadCommands(ids);\n }\n\n private _onAfterUserQueryCreated(result: string | null) {\n this._dataProvider.setLoading(false);\n if (result) {\n this.changeSavedQuery(result);\n }\n }\n\n private _registerEventListeners() {\n this._dataProvider.taskEvents.addEventListener('onError', (error, message) => this._onError(error, message));\n this._customColumnsDataProvider?.events.addEventListener('onError', (error, message) => this._onError(error, message));\n this._savedQueryDataProvider.queryEvents.addEventListener('onError', (error, message) => this._onError(error, message));\n this._dataProvider.addEventListener('onRecordsSelected', (ids) => this._onSelectedRecordsChanged(ids));\n this._dataProvider.taskEvents.addEventListener('onBeforeTasksDeleted', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTasksDeleted', (result) => this._onAfterTasksDeleted(result));\n this._dataProvider.taskEvents.addEventListener('onBeforeTaskMoved', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onBeforeTasksEdited', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTasksEdited', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onBeforeTemplateCreated', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTemplateCreated', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onBeforeTasksCreated', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTasksCreated', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onAfterTaskMoved', () => this._dataProvider.setLoading(false));\n this._savedQueryDataProvider.queryEvents.addEventListener('onAfterUserQueryCreated', (result) => this._onAfterUserQueryCreated(result));\n this._savedQueryDataProvider.queryEvents.addEventListener('onAfterUserQueryUpdated', (result) => this._dataProvider.setLoading(false));\n }\n\n private _onError = (error: any, message: string) => {\n this._dataProvider.setLoading(false);\n this.getPcfContext().navigation.openErrorDialog({\n message: message,\n details: error\n })\n }\n\n private _onAfterTasksDeleted = (result: IDeleteTasksResult | null) => {\n this._dataProvider.setLoading(false);\n if (!result) return;\n if (!result.success) {\n this.getPcfContext().navigation.openConfirmDialog({\n subtitle: this._localizationService.getLocalizedString('deletingTasksError'),\n text: result.errors.map(e => {\n return `${this._dataProvider.getRecordsMap()[e.id].getNamedReference().name}: ${ErrorHelper.getMessageFromError(e.error)}`\n }).join('\\n'),\n })\n }\n }\n\n}"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TaskGridDatasetControl.js","sources":["../../../src/components/TaskGrid/TaskGridDatasetControl.ts"],"sourcesContent":["import { IDatasetControlParameters } from \"../DatasetControl\";\nimport { IDatasetControlEvents } from \"../../utils/dataset-control\";\nimport { EditColumns, IEditColumns } from \"../../utils/dataset-control/EditColumns\";\nimport { IDataset, ICommand, EventEmitter, IDataProvider, Operators, Filtering } from \"@talxis/client-libraries\";\nimport { IDeleteTasksResult, ITaskDataProvider } from \"./providers/task\";\nimport { ILocalizationService } from \"../../utils\";\nimport { ITaskGridLabels } from \"./labels\";\nimport { ISavedQueryDataProvider, PATH_COLUMN_NAME } from \"./providers/saved-query\";\nimport { ITaskGridState } from \"./TaskGridDatasetControlFactory\";\nimport { Type } from \"@talxis/client-libraries/dist/utils/fetch-xml/filter/Type\";\nimport { ICustomColumnsDataProvider } from \"./providers/custom-columns/CustomColumnsDataProvider\";\nimport { ITaskGridDatasetControl, ITaskGridDescriptor, ITaskGridParameters, ITaskGridDatasetControlParameters } from \"./interfaces\";\nimport { ErrorHelper } from \"../../utils/error-handling\";\n\nconst STATE_CODE_ACTIVE = 0;\n\nexport class TaskGridDatasetControl extends EventEmitter<IDatasetControlEvents> implements ITaskGridDatasetControl {\n private _dataset: IDataset;\n private _descriptor: ITaskGridDescriptor;\n private _dataProvider: ITaskDataProvider;\n private _templateDataProvider?: IDataProvider;\n private _localizationService: ILocalizationService<ITaskGridLabels>;\n private _savedQueryDataProvider: ISavedQueryDataProvider;\n private _customColumnsDataProvider?: ICustomColumnsDataProvider;\n private _controlId: string;\n private _state: ITaskGridState;\n private _gridParameters: ITaskGridParameters;\n private _commands: ICommand[] = [];\n private _getPcfContext: () => ComponentFramework.Context<any, any>;\n private _changeToQueryId!: string;\n\n constructor(parameters: ITaskGridDatasetControlParameters) {\n super();\n this._dataset = parameters.dataset;\n this._dataProvider = this._dataset.getDataProvider() as ITaskDataProvider;\n this._descriptor = parameters.taskGridDescriptor;\n this._controlId = this._descriptor.onGetControlId?.() ?? `task-grid-dataset-control-${crypto.randomUUID()}`;\n this._localizationService = parameters.localizationService;\n this._savedQueryDataProvider = parameters.savedQueryDataProvider;\n this._customColumnsDataProvider = parameters.customColumnsDataProvider;\n this._templateDataProvider = parameters.templateDataProvider;\n this._state = parameters.state;\n this._gridParameters = this._descriptor.onGetGridParameters?.() ?? {};\n this._getPcfContext = parameters.onGetPcfContext;\n this._loadState(parameters.state);\n this.loadCommands([]);\n this._registerEventListeners();\n }\n\n public get editColumns(): IEditColumns {\n return new EditColumns({ datasetControl: this });\n }\n\n public getNativeColumns() {\n return {\n ...this._descriptor.onGetFieldMapping(),\n path: PATH_COLUMN_NAME\n }\n }\n\n public getLocalizationService() {\n return this._localizationService;\n }\n\n public getControlId() {\n return this._controlId;\n }\n\n public isRowDraggingEnabled(): boolean {\n return this._gridParameters.enableRowDragging ?? true;\n }\n\n public isEditColumnsScopeSelectorEnabled(): boolean {\n return this._gridParameters.enableEditColumnsScopeSelector ?? true;\n }\n\n public isTemplatingEnabled(): boolean {\n return !!this._templateDataProvider;\n }\n\n public isCustomColumnsEnabled(): boolean {\n return !!this._customColumnsDataProvider;\n }\n\n public isHideInactiveTasksToggleVisible(): boolean {\n return this._gridParameters.enableHideInactiveTasksToggle ?? true;\n }\n\n public isCustomColumnCreationEnabled(): boolean {\n return this._gridParameters.enableCustomColumnCreation ?? true;\n }\n \n public isCustomColumnEditingEnabled(): boolean {\n return this._gridParameters.enableCustomColumnEditing ?? true;\n }\n public isCustomColumnDeletionEnabled(): boolean {\n return this._gridParameters.enableCustomColumnDeletion ?? true;\n }\n\n public isInlineCreateEnabled(): boolean {\n return this._gridParameters.enableInlineCreation ?? true;\n }\n\n public isShowHierarchyToggleVisible(): boolean {\n return this._gridParameters.enableShowHierarchyToggle ?? true;\n }\n\n public getInactiveTasksVisibility() {\n const stateCodeCondition = this._dataProvider.getFiltering()?.conditions?.find(condition => condition.attributeName === this.getNativeColumns().stateCode);\n switch (stateCodeCondition?.conditionOperator) {\n case Operators.In.Value:\n return stateCodeCondition.value?.includes('1') ?? false;\n case Operators.Equal.Value:\n return stateCodeCondition.value === '1';\n default: {\n return true;\n }\n }\n }\n \n public isViewManagerEnabled(): boolean {\n return this._gridParameters.enableQueryManager ?? true;\n }\n\n public isSaveQueryAsNewEnabled(): boolean {\n return this._gridParameters.enableSaveAsNewQuery ?? true;\n }\n\n public isSaveQueryChangesEnabled(): boolean {\n return this._gridParameters.enableSaveQueryChanges ?? true;\n }\n\n public isUserQueriesFeatureEnabled(): boolean {\n return this._gridParameters.enableUserQueries ?? true;\n }\n\n public getSavedQueryDataProvider() {\n return this._savedQueryDataProvider;\n }\n\n public getTemplateDataProvider(): IDataProvider {\n if (!this._templateDataProvider) {\n throw new Error('This TaskGridDatasetControl does not have a template data provider');\n }\n return this._templateDataProvider;\n }\n\n\n public createUserQueryDataProvider(): IDataProvider {\n return this._descriptor.onCreateUserQueryDataProvider();\n }\n\n public getCustomColumnsDataProvider() {\n if (!this._customColumnsDataProvider) {\n throw new Error('This TaskGridDatasetControl does not have a custom columns data provider!');\n }\n return this._customColumnsDataProvider;\n }\n\n public toggleFlatList(enabled: boolean) {\n if (!this._state.savedQuery) {\n throw new Error('Cannot toggle flat list mode when there is no saved query in state');\n }\n this._state.savedQuery.isFlatListEnabled = enabled;\n const pathColumn = this._dataProvider.getColumnsMap()[this.getNativeColumns().path];\n pathColumn.isHidden = !enabled;\n pathColumn.order = -1;\n //update the columns to trigger column sort\n this._dataProvider.setColumns(this._dataProvider.getColumns());\n this._dataProvider.refresh();\n }\n\n public toggleHideInactiveTasks(hide: boolean) {\n const filtering = new Filtering(this._dataProvider);\n const stateCodeFilter = filtering.getColumnFilter(this.getNativeColumns().stateCode);\n stateCodeFilter.clear();\n\n if (hide) {\n const condition = stateCodeFilter.addCondition();\n condition.setOperator(Operators.Equal.Value);\n condition.setValue([STATE_CODE_ACTIVE]);\n }\n const filterExpression = filtering.getFilterExpression(Type.And.Value);\n if (filterExpression) {\n this._dataProvider.setFiltering(filterExpression);\n }\n this._dataProvider.refresh();\n }\n\n //we need to make sure that query gets saved into state\n public changeSavedQuery(queryId: string) {\n this._changeToQueryId = queryId;\n this.requestRemount();\n }\n\n public setInterceptor(event: any, interceptor: any): void {\n throw new Error(\"Method not implemented.\");\n }\n\n public isPaginationVisible(): boolean {\n return false;\n }\n public isRecordCountVisible(): boolean {\n return true\n }\n public isPageSizeSwitcherVisible(): boolean {\n return false;\n }\n public isQuickFindVisible(): boolean {\n return this._gridParameters.enableQuickFind ?? true;\n }\n public isAutoSaveEnabled(): boolean {\n return true;\n }\n public isRibbonVisible(): boolean {\n return true;\n }\n public getHeight(): string | null {\n return this._gridParameters.height ?? null;\n }\n public getDataset(): IDataset {\n return this._dataset;\n }\n public getDataProvider(): ITaskDataProvider {\n return this._dataProvider;\n }\n public getPcfContext(): ComponentFramework.Context<any> {\n return this._getPcfContext();\n }\n\n public isTaskEditingEnabled(): boolean {\n return this._gridParameters.enableTaskEditing ?? true;\n }\n public isTaskCreatingEnabled(): boolean {\n if(!this.isTaskEditingEnabled()) return false;\n return this._gridParameters.enableTaskCreation ?? true;\n }\n public isTaskDeletingEnabled(): boolean {\n if(!this.isTaskEditingEnabled()) return false;\n return this._gridParameters.enableTaskDeletion ?? true;\n }\n\n public getParameters(): IDatasetControlParameters {\n return {\n Grid: this.getDataset(),\n EnableEditing: {\n raw: this.isTaskEditingEnabled()\n },\n EnableAutoSave: {\n raw: true\n },\n EnableEditColumns: {\n raw: this._gridParameters.enableEditColumns ?? true\n },\n EnableZebra: {\n raw: false\n },\n EnableOptionSetColors: {\n raw: true\n },\n Height: {\n raw: this.getHeight()\n }\n }\n }\n public async loadCommands(ids: string[]): Promise<void> {\n this._commands = await this._dataProvider.retrieveRecordCommand({\n recordIds: ids,\n refreshAllRules: true\n });\n this.dispatchEvent('onRecordCommandsLoaded');\n }\n public retrieveRecordCommands(): ICommand[] {\n return this._commands;\n }\n public areCommandsLoaded(): boolean {\n return true;\n }\n public isEditColumnsVisible(): boolean {\n return true;\n }\n public isViewSwitcherVisible(): boolean {\n return false;\n }\n public isEditFiltersVisible(): boolean {\n return false;\n }\n public requestEditColumns(): void {\n throw new Error(\"Method not implemented.\");\n }\n public destroy(): void {\n this.saveState();\n this._dataProvider.destroy();\n this._savedQueryDataProvider.destroy();\n this._customColumnsDataProvider?.destroy();\n this._templateDataProvider?.destroy();\n }\n public requestRemount(): void {\n this.dispatchEvent('onRemountRequested');\n }\n public async init(): Promise<void> {\n return;\n }\n public getState(): ComponentFramework.Dictionary {\n return this._state;\n }\n public saveState(): void {\n if (this._changeToQueryId) {\n this._state.savedQuery = {\n id: this._changeToQueryId\n }\n //@ts-ignore\n if(this._state.AgGridState) {\n //clean up AgGrid state as it might not be compatible with new query\n //@ts-ignore\n delete this._state.AgGridState;\n }\n }\n else {\n const currentQueryId = this._savedQueryDataProvider.getCurrentQuery().id;\n this._state.savedQuery = {\n ...this._savedQueryDataProvider.getSavedQuery(currentQueryId),\n filtering: this._dataProvider.getFiltering() ?? undefined,\n sorting: this._dataProvider.getSorting(),\n columns: this._dataProvider.getColumns(),\n searchQuery: this._dataProvider.getSearchQuery() ?? undefined,\n linking: this._dataProvider.getLinking(),\n isFlatListEnabled: this._dataProvider.isFlatListEnabled(),\n }\n }\n }\n\n private _loadState(state: ITaskGridState) {\n let currentQuery = this._savedQueryDataProvider.getCurrentQuery();\n if (!state.savedQuery) {\n state.savedQuery = currentQuery;\n }\n //at this point current query might be missing required properties\n let { filtering, sorting, columns, searchQuery, linking } = currentQuery;\n this._dataProvider.setColumns(columns);\n\n if (filtering) {\n this._dataProvider.setFiltering(filtering);\n }\n if (sorting) {\n this._dataProvider.setSorting(sorting);\n }\n if (linking) {\n this._dataProvider.setLinking(linking);\n }\n if (searchQuery) {\n this._dataProvider.setSearchQuery(searchQuery);\n }\n }\n\n private _onSelectedRecordsChanged(ids: string[]) {\n this.loadCommands(ids);\n }\n\n private _onAfterUserQueryCreated(result: string | null) {\n this._dataProvider.setLoading(false);\n if (result) {\n this.changeSavedQuery(result);\n }\n }\n\n private _registerEventListeners() {\n this._dataProvider.taskEvents.addEventListener('onError', (error, message) => this._onError(error, message));\n this._customColumnsDataProvider?.events.addEventListener('onError', (error, message) => this._onError(error, message));\n this._savedQueryDataProvider.queryEvents.addEventListener('onError', (error, message) => this._onError(error, message));\n this._dataProvider.addEventListener('onRecordsSelected', (ids) => this._onSelectedRecordsChanged(ids));\n this._dataProvider.taskEvents.addEventListener('onBeforeTasksDeleted', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTasksDeleted', (result) => this._onAfterTasksDeleted(result));\n this._dataProvider.taskEvents.addEventListener('onBeforeTaskMoved', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onBeforeTasksEdited', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTasksEdited', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onBeforeTemplateCreated', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTemplateCreated', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onBeforeTasksCreated', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterTasksCreated', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onAfterTaskMoved', () => this._dataProvider.setLoading(false));\n this._dataProvider.taskEvents.addEventListener('onBeforeDatasetItemOpened', () => this._dataProvider.setLoading(true));\n this._dataProvider.taskEvents.addEventListener('onAfterDatasetItemOpened', () => this._dataProvider.setLoading(false));\n this._savedQueryDataProvider.queryEvents.addEventListener('onAfterUserQueryCreated', (result) => this._onAfterUserQueryCreated(result));\n this._savedQueryDataProvider.queryEvents.addEventListener('onAfterUserQueryUpdated', (result) => this._dataProvider.setLoading(false));\n }\n\n private _onError = (error: any, message: string) => {\n this._dataProvider.setLoading(false);\n this.getPcfContext().navigation.openErrorDialog({\n message: message,\n details: error\n })\n }\n\n private _onAfterTasksDeleted = (result: IDeleteTasksResult | null) => {\n this._dataProvider.setLoading(false);\n if (!result) return;\n if (!result.success) {\n this.getPcfContext().navigation.openConfirmDialog({\n subtitle: this._localizationService.getLocalizedString('deletingTasksError'),\n text: result.errors.map(e => {\n return `${this._dataProvider.getRecordsMap()[e.id].getNamedReference().name}: ${ErrorHelper.getMessageFromError(e.error)}`\n }).join('\\n'),\n })\n }\n }\n\n}"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="@types/powerapps-component-framework" />
|
|
2
|
-
import { ILocalizationService
|
|
3
|
-
import {
|
|
2
|
+
import { ILocalizationService } from "../../utils";
|
|
3
|
+
import { ITaskGridLabels } from "./labels";
|
|
4
|
+
import { ISavedQuery } from "./providers/saved-query";
|
|
4
5
|
import { ITaskGridDatasetControl, ITaskGridDescriptor } from "./interfaces";
|
|
5
6
|
export interface ITaskGridState {
|
|
6
7
|
savedQuery?: Partial<ISavedQuery> & {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Dataset } from '@talxis/client-libraries';
|
|
2
|
-
import { CustomColumnsDataProvider } from './
|
|
2
|
+
import { CustomColumnsDataProvider } from './providers/custom-columns/CustomColumnsDataProvider.js';
|
|
3
3
|
import { TaskGridDatasetControl } from './TaskGridDatasetControl.js';
|
|
4
|
-
import { SavedQueryDataProvider } from './
|
|
5
|
-
import { TaskDataProvider } from './
|
|
4
|
+
import { SavedQueryDataProvider, PATH_COLUMN_NAME } from './providers/saved-query/SavedQueryDataProvider.js';
|
|
5
|
+
import { TaskDataProvider } from './providers/task/TaskDataProvider.js';
|
|
6
6
|
|
|
7
7
|
class TaskGridDatasetControlFactory {
|
|
8
8
|
//makes sure the instance is created after the dependencies are loaded, and handles creation of data providers and dataset
|
|
@@ -17,7 +17,8 @@ class TaskGridDatasetControlFactory {
|
|
|
17
17
|
await customColumnsDataProvider?.refresh();
|
|
18
18
|
const savedQueryStrategy = parameters.taskGridDescriptor.onCreateSavedQueryStrategy();
|
|
19
19
|
const savedQueryDataProvider = new SavedQueryDataProvider(savedQueryStrategy, {
|
|
20
|
-
|
|
20
|
+
localizationService: parameters.localizationService,
|
|
21
|
+
nativeColumns: { ...parameters.taskGridDescriptor.onGetFieldMapping(), path: PATH_COLUMN_NAME },
|
|
21
22
|
customColumnsDataProvider: customColumnsDataProvider,
|
|
22
23
|
preferredQuery: parameters.state.savedQuery,
|
|
23
24
|
});
|
|
@@ -29,8 +30,9 @@ class TaskGridDatasetControlFactory {
|
|
|
29
30
|
});
|
|
30
31
|
taskDataProvider = new TaskDataProvider({
|
|
31
32
|
localizationService: parameters.localizationService,
|
|
32
|
-
nativeColumns: parameters.taskGridDescriptor.
|
|
33
|
+
nativeColumns: { ...parameters.taskGridDescriptor.onGetFieldMapping(), path: PATH_COLUMN_NAME },
|
|
33
34
|
strategy: taskStrategy,
|
|
35
|
+
savedQueryDataProvider: savedQueryDataProvider,
|
|
34
36
|
onIsFlatListEnabled: () => TaskGridDatasetControlFactory._getIsFlatlistEnabled(parameters, savedQueryDataProvider)
|
|
35
37
|
});
|
|
36
38
|
const dataset = new Dataset(taskDataProvider);
|