@talxis/base-controls 0.0.1
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/README.md +41 -0
- package/dist/components/DatasetControl/DatasetControl.d.ts +3 -0
- package/dist/components/DatasetControl/DatasetControl.js +72 -0
- package/dist/components/DatasetControl/DatasetControl.js.map +1 -0
- package/dist/components/DatasetControl/Paging/DatasetPaging.d.ts +3 -0
- package/dist/components/DatasetControl/Paging/DatasetPaging.js +69 -0
- package/dist/components/DatasetControl/Paging/DatasetPaging.js.map +1 -0
- package/dist/components/DatasetControl/Paging/Paging.d.ts +26 -0
- package/dist/components/DatasetControl/Paging/Paging.js +80 -0
- package/dist/components/DatasetControl/Paging/Paging.js.map +1 -0
- package/dist/components/DatasetControl/Paging/index.d.ts +3 -0
- package/dist/components/DatasetControl/Paging/index.js +3 -0
- package/dist/components/DatasetControl/Paging/index.js.map +1 -0
- package/dist/components/DatasetControl/Paging/interfaces.d.ts +16 -0
- package/dist/components/DatasetControl/Paging/styles.d.ts +35 -0
- package/dist/components/DatasetControl/Paging/styles.js +41 -0
- package/dist/components/DatasetControl/Paging/styles.js.map +1 -0
- package/dist/components/DatasetControl/Paging/translations.d.ts +38 -0
- package/dist/components/DatasetControl/Paging/translations.js +14 -0
- package/dist/components/DatasetControl/Paging/translations.js.map +1 -0
- package/dist/components/DatasetControl/QuickFind/QuickFind.d.ts +13 -0
- package/dist/components/DatasetControl/QuickFind/QuickFind.js +59 -0
- package/dist/components/DatasetControl/QuickFind/QuickFind.js.map +1 -0
- package/dist/components/DatasetControl/QuickFind/styles.d.ts +8 -0
- package/dist/components/DatasetControl/QuickFind/styles.js +15 -0
- package/dist/components/DatasetControl/QuickFind/styles.js.map +1 -0
- package/dist/components/DatasetControl/index.d.ts +3 -0
- package/dist/components/DatasetControl/index.js +4 -0
- package/dist/components/DatasetControl/index.js.map +1 -0
- package/dist/components/DatasetControl/interfaces.d.ts +32 -0
- package/dist/components/DatasetControl/styles.d.ts +18 -0
- package/dist/components/DatasetControl/styles.js +29 -0
- package/dist/components/DatasetControl/styles.js.map +1 -0
- package/dist/components/DatasetControl/translations.d.ts +18 -0
- package/dist/components/DatasetControl/translations.js +9 -0
- package/dist/components/DatasetControl/translations.js.map +1 -0
- package/dist/components/DateTime/DateTime.d.ts +3 -0
- package/dist/components/DateTime/DateTime.js +149 -0
- package/dist/components/DateTime/DateTime.js.map +1 -0
- package/dist/components/DateTime/components/Calendar.d.ts +17 -0
- package/dist/components/DateTime/components/Calendar.js +63 -0
- package/dist/components/DateTime/components/Calendar.js.map +1 -0
- package/dist/components/DateTime/hooks/useDateTime.d.ts +32 -0
- package/dist/components/DateTime/hooks/useDateTime.js +150 -0
- package/dist/components/DateTime/hooks/useDateTime.js.map +1 -0
- package/dist/components/DateTime/index.d.ts +3 -0
- package/dist/components/DateTime/index.js +3 -0
- package/dist/components/DateTime/index.js.map +1 -0
- package/dist/components/DateTime/interfaces.d.ts +23 -0
- package/dist/components/DateTime/styles.d.ts +31 -0
- package/dist/components/DateTime/styles.js +37 -0
- package/dist/components/DateTime/styles.js.map +1 -0
- package/dist/components/DateTime/translations.d.ts +19 -0
- package/dist/components/DateTime/translations.js +23 -0
- package/dist/components/DateTime/translations.js.map +1 -0
- package/dist/components/Decimal/Decimal.d.ts +3 -0
- package/dist/components/Decimal/Decimal.js +204 -0
- package/dist/components/Decimal/Decimal.js.map +1 -0
- package/dist/components/Decimal/components/ArrowButtons.d.ts +10 -0
- package/dist/components/Decimal/components/ArrowButtons.js +38 -0
- package/dist/components/Decimal/components/ArrowButtons.js.map +1 -0
- package/dist/components/Decimal/components/styles.d.ts +20 -0
- package/dist/components/Decimal/components/styles.js +26 -0
- package/dist/components/Decimal/components/styles.js.map +1 -0
- package/dist/components/Decimal/index.d.ts +2 -0
- package/dist/components/Decimal/index.js +2 -0
- package/dist/components/Decimal/index.js.map +1 -0
- package/dist/components/Decimal/interfaces.d.ts +13 -0
- package/dist/components/Duration/Duration.d.ts +3 -0
- package/dist/components/Duration/Duration.js +155 -0
- package/dist/components/Duration/Duration.js.map +1 -0
- package/dist/components/Duration/durationOptions.d.ts +2 -0
- package/dist/components/Duration/durationOptions.js +27 -0
- package/dist/components/Duration/durationOptions.js.map +1 -0
- package/dist/components/Duration/index.d.ts +2 -0
- package/dist/components/Duration/index.js +2 -0
- package/dist/components/Duration/index.js.map +1 -0
- package/dist/components/Duration/interfaces.d.ts +13 -0
- package/dist/components/Duration/translations.d.ts +26 -0
- package/dist/components/Duration/translations.js +31 -0
- package/dist/components/Duration/translations.js.map +1 -0
- package/dist/components/Grid/Grid.d.ts +3 -0
- package/dist/components/Grid/Grid.js +37 -0
- package/dist/components/Grid/Grid.js.map +1 -0
- package/dist/components/Grid/GridContext.d.ts +3 -0
- package/dist/components/Grid/GridContext.js +6 -0
- package/dist/components/Grid/GridContext.js.map +1 -0
- package/dist/components/Grid/aggregation/Aggregation.d.ts +18 -0
- package/dist/components/Grid/aggregation/Aggregation.js +129 -0
- package/dist/components/Grid/aggregation/Aggregation.js.map +1 -0
- package/dist/components/Grid/constants.d.ts +1 -0
- package/dist/components/Grid/constants.js +4 -0
- package/dist/components/Grid/constants.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/AgGrid.d.ts +5 -0
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js +203 -0
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.d.ts +2 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js +12 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/styles.d.ts +18 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/styles.js +23 -0
- package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/styles.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.d.ts +2 -0
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js +10 -0
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/context.d.ts +3 -0
- package/dist/components/Grid/core/components/AgGrid/context.js +6 -0
- package/dist/components/Grid/core/components/AgGrid/context.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.d.ts +52 -0
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +343 -0
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/model/Comparator.d.ts +9 -0
- package/dist/components/Grid/core/components/AgGrid/model/Comparator.js +86 -0
- package/dist/components/Grid/core/components/AgGrid/model/Comparator.js.map +1 -0
- package/dist/components/Grid/core/components/AgGrid/styles.d.ts +72 -0
- package/dist/components/Grid/core/components/AgGrid/styles.js +78 -0
- package/dist/components/Grid/core/components/AgGrid/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/Cell.d.ts +13 -0
- package/dist/components/Grid/core/components/Cell/Cell.js +158 -0
- package/dist/components/Grid/core/components/Cell/Cell.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/CellContent/CellContent.d.ts +8 -0
- package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js +230 -0
- package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/CellContent/styles.d.ts +33 -0
- package/dist/components/Grid/core/components/Cell/CellContent/styles.js +39 -0
- package/dist/components/Grid/core/components/Cell/CellContent/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/Notifications/Notifications.d.ts +12 -0
- package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js +112 -0
- package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/Notifications/styles.d.ts +39 -0
- package/dist/components/Grid/core/components/Cell/Notifications/styles.js +46 -0
- package/dist/components/Grid/core/components/Cell/Notifications/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Cell/styles.d.ts +40 -0
- package/dist/components/Grid/core/components/Cell/styles.js +59 -0
- package/dist/components/Grid/core/components/Cell/styles.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.d.ts +6 -0
- package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js +61 -0
- package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.d.ts +2 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js +50 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.d.ts +14 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js +20 -0
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js.map +1 -0
- package/dist/components/Grid/core/components/ColumnHeader/styles.d.ts +42 -0
- package/dist/components/Grid/core/components/ColumnHeader/styles.js +48 -0
- package/dist/components/Grid/core/components/ColumnHeader/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/Constants.d.ts +2 -0
- package/dist/components/Grid/core/components/Dialog/Constants.js +9 -0
- package/dist/components/Grid/core/components/Dialog/Constants.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/Styles.d.ts +2 -0
- package/dist/components/Grid/core/components/Dialog/Styles.js +61 -0
- package/dist/components/Grid/core/components/Dialog/Styles.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/index.d.ts +4 -0
- package/dist/components/Grid/core/components/Dialog/index.js +16 -0
- package/dist/components/Grid/core/components/Dialog/index.js.map +1 -0
- package/dist/components/Grid/core/components/Dialog/interfaces/index.d.ts +6 -0
- package/dist/components/Grid/core/components/Dialog/interfaces/index.js +2 -0
- package/dist/components/Grid/core/components/Dialog/interfaces/index.js.map +1 -0
- package/dist/components/Grid/core/components/Save/Save.d.ts +2 -0
- package/dist/components/Grid/core/components/Save/Save.js +59 -0
- package/dist/components/Grid/core/components/Save/Save.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.d.ts +7 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js +73 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.d.ts +11 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +231 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.d.ts +39 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js +45 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.d.ts +31 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js +37 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Save/styles.d.ts +35 -0
- package/dist/components/Grid/core/components/Save/styles.js +42 -0
- package/dist/components/Grid/core/components/Save/styles.js.map +1 -0
- package/dist/components/Grid/core/controllers/useGridController.d.ts +7 -0
- package/dist/components/Grid/core/controllers/useGridController.js +29 -0
- package/dist/components/Grid/core/controllers/useGridController.js.map +1 -0
- package/dist/components/Grid/core/enums/ConditionOperator.d.ts +48 -0
- package/dist/components/Grid/core/enums/ConditionOperator.js +52 -0
- package/dist/components/Grid/core/enums/ConditionOperator.js.map +1 -0
- package/dist/components/Grid/core/enums/DataType.d.ts +25 -0
- package/dist/components/Grid/core/enums/DataType.js +30 -0
- package/dist/components/Grid/core/enums/DataType.js.map +1 -0
- package/dist/components/Grid/core/hooks/useGridInstance.d.ts +2 -0
- package/dist/components/Grid/core/hooks/useGridInstance.js +9 -0
- package/dist/components/Grid/core/hooks/useGridInstance.js.map +1 -0
- package/dist/components/Grid/core/hooks/useRefreshCallback.d.ts +2 -0
- package/dist/components/Grid/core/hooks/useRefreshCallback.js +20 -0
- package/dist/components/Grid/core/hooks/useRefreshCallback.js.map +1 -0
- package/dist/components/Grid/core/interfaces/IGridColumn.d.ts +13 -0
- package/dist/components/Grid/core/interfaces/IGridContext.d.ts +4 -0
- package/dist/components/Grid/core/model/Grid.d.ts +81 -0
- package/dist/components/Grid/core/model/Grid.js +513 -0
- package/dist/components/Grid/core/model/Grid.js.map +1 -0
- package/dist/components/Grid/core/model/GridDependency.d.ts +13 -0
- package/dist/components/Grid/core/model/GridDependency.js +28 -0
- package/dist/components/Grid/core/model/GridDependency.js.map +1 -0
- package/dist/components/Grid/core/services/KeyListener.d.ts +12 -0
- package/dist/components/Grid/core/services/KeyListener.js +31 -0
- package/dist/components/Grid/core/services/KeyListener.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.d.ts +8 -0
- package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js +59 -0
- package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.d.ts +7 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js +56 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.d.ts +7 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js +73 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.d.ts +7 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js +90 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.d.ts +48 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js +146 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.d.ts +11 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js +53 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.d.ts +9 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js +31 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.d.ts +10 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js +294 -0
- package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js.map +1 -0
- package/dist/components/Grid/filtering/components/FilterCallout/styles.d.ts +35 -0
- package/dist/components/Grid/filtering/components/FilterCallout/styles.js +40 -0
- package/dist/components/Grid/filtering/components/FilterCallout/styles.js.map +1 -0
- package/dist/components/Grid/filtering/constants.d.ts +5 -0
- package/dist/components/Grid/filtering/constants.js +53 -0
- package/dist/components/Grid/filtering/constants.js.map +1 -0
- package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.d.ts +21 -0
- package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js +44 -0
- package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js.map +1 -0
- package/dist/components/Grid/filtering/model/Condition.d.ts +49 -0
- package/dist/components/Grid/filtering/model/Condition.js +347 -0
- package/dist/components/Grid/filtering/model/Condition.js.map +1 -0
- package/dist/components/Grid/filtering/model/Filtering.d.ts +11 -0
- package/dist/components/Grid/filtering/model/Filtering.js +78 -0
- package/dist/components/Grid/filtering/model/Filtering.js.map +1 -0
- package/dist/components/Grid/filtering/utils/FilteringUtilts.d.ts +34 -0
- package/dist/components/Grid/filtering/utils/FilteringUtilts.js +195 -0
- package/dist/components/Grid/filtering/utils/FilteringUtilts.js.map +1 -0
- package/dist/components/Grid/index.d.ts +2 -0
- package/dist/components/Grid/index.js +2 -0
- package/dist/components/Grid/index.js.map +1 -0
- package/dist/components/Grid/interfaces.d.ts +36 -0
- package/dist/components/Grid/selection/model/Selection.d.ts +12 -0
- package/dist/components/Grid/selection/model/Selection.js +54 -0
- package/dist/components/Grid/selection/model/Selection.js.map +1 -0
- package/dist/components/Grid/sorting/Sorting.d.ts +10 -0
- package/dist/components/Grid/sorting/Sorting.js +31 -0
- package/dist/components/Grid/sorting/Sorting.js.map +1 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.d.ts +8 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js +157 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map +1 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.d.ts +9 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js +15 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js.map +1 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.d.ts +9 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.js +22 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.js.map +1 -0
- package/dist/components/Grid/translations.d.ts +366 -0
- package/dist/components/Grid/translations.js +99 -0
- package/dist/components/Grid/translations.js.map +1 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.d.ts +2 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js +11 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js.map +1 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/index.d.ts +1 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js +2 -0
- package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js.map +1 -0
- package/dist/components/GridCellRenderer/GridCellRenderer.d.ts +3 -0
- package/dist/components/GridCellRenderer/GridCellRenderer.js +293 -0
- package/dist/components/GridCellRenderer/GridCellRenderer.js.map +1 -0
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.d.ts +5 -0
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.js +75 -0
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.js.map +1 -0
- package/dist/components/GridCellRenderer/OptionSet/index.d.ts +1 -0
- package/dist/components/GridCellRenderer/OptionSet/index.js +2 -0
- package/dist/components/GridCellRenderer/OptionSet/index.js.map +1 -0
- package/dist/components/GridCellRenderer/OptionSet/styles.d.ts +20 -0
- package/dist/components/GridCellRenderer/OptionSet/styles.js +29 -0
- package/dist/components/GridCellRenderer/OptionSet/styles.js.map +1 -0
- package/dist/components/GridCellRenderer/RecordCommands/Icon.d.ts +7 -0
- package/dist/components/GridCellRenderer/RecordCommands/Icon.js +32 -0
- package/dist/components/GridCellRenderer/RecordCommands/Icon.js.map +1 -0
- package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.d.ts +13 -0
- package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js +103 -0
- package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js.map +1 -0
- package/dist/components/GridCellRenderer/RecordCommands/styles.d.ts +13 -0
- package/dist/components/GridCellRenderer/RecordCommands/styles.js +32 -0
- package/dist/components/GridCellRenderer/RecordCommands/styles.js.map +1 -0
- package/dist/components/GridCellRenderer/index.d.ts +2 -0
- package/dist/components/GridCellRenderer/index.js +2 -0
- package/dist/components/GridCellRenderer/index.js.map +1 -0
- package/dist/components/GridCellRenderer/interfaces.d.ts +66 -0
- package/dist/components/GridCellRenderer/styles.d.ts +85 -0
- package/dist/components/GridCellRenderer/styles.js +119 -0
- package/dist/components/GridCellRenderer/styles.js.map +1 -0
- package/dist/components/GridCellRenderer/translations.d.ts +30 -0
- package/dist/components/GridCellRenderer/translations.js +35 -0
- package/dist/components/GridCellRenderer/translations.js.map +1 -0
- package/dist/components/GridCellRenderer/useComponentProps.d.ts +6 -0
- package/dist/components/GridCellRenderer/useComponentProps.js +10 -0
- package/dist/components/GridCellRenderer/useComponentProps.js.map +1 -0
- package/dist/components/Lookup/Lookup.d.ts +3 -0
- package/dist/components/Lookup/Lookup.js +222 -0
- package/dist/components/Lookup/Lookup.js.map +1 -0
- package/dist/components/Lookup/components/RecordCreator.d.ts +10 -0
- package/dist/components/Lookup/components/RecordCreator.js +37 -0
- package/dist/components/Lookup/components/RecordCreator.js.map +1 -0
- package/dist/components/Lookup/components/TargetSelector.d.ts +9 -0
- package/dist/components/Lookup/components/TargetSelector.js +19 -0
- package/dist/components/Lookup/components/TargetSelector.js.map +1 -0
- package/dist/components/Lookup/hooks/useFetchXml.d.ts +6 -0
- package/dist/components/Lookup/hooks/useFetchXml.js +52 -0
- package/dist/components/Lookup/hooks/useFetchXml.js.map +1 -0
- package/dist/components/Lookup/hooks/useLoadedEntities.d.ts +6 -0
- package/dist/components/Lookup/hooks/useLoadedEntities.js +20 -0
- package/dist/components/Lookup/hooks/useLoadedEntities.js.map +1 -0
- package/dist/components/Lookup/hooks/useLookup.d.ts +43 -0
- package/dist/components/Lookup/hooks/useLookup.js +120 -0
- package/dist/components/Lookup/hooks/useLookup.js.map +1 -0
- package/dist/components/Lookup/index.d.ts +3 -0
- package/dist/components/Lookup/index.js +3 -0
- package/dist/components/Lookup/index.js.map +1 -0
- package/dist/components/Lookup/interfaces.d.ts +75 -0
- package/dist/components/Lookup/styles.d.ts +95 -0
- package/dist/components/Lookup/styles.js +112 -0
- package/dist/components/Lookup/styles.js.map +1 -0
- package/dist/components/Lookup/translations.d.ts +30 -0
- package/dist/components/Lookup/translations.js +33 -0
- package/dist/components/Lookup/translations.js.map +1 -0
- package/dist/components/MultiSelectOptionSet/ColofulOptions/ColorfulOptions.d.ts +8 -0
- package/dist/components/MultiSelectOptionSet/ColofulOptions/ColorfulOptions.js +42 -0
- package/dist/components/MultiSelectOptionSet/ColofulOptions/ColorfulOptions.js.map +1 -0
- package/dist/components/MultiSelectOptionSet/ColofulOptions/styles.d.ts +17 -0
- package/dist/components/MultiSelectOptionSet/ColofulOptions/styles.js +24 -0
- package/dist/components/MultiSelectOptionSet/ColofulOptions/styles.js.map +1 -0
- package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.d.ts +3 -0
- package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js +132 -0
- package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js.map +1 -0
- package/dist/components/MultiSelectOptionSet/index.d.ts +2 -0
- package/dist/components/MultiSelectOptionSet/index.js +2 -0
- package/dist/components/MultiSelectOptionSet/index.js.map +1 -0
- package/dist/components/MultiSelectOptionSet/interfaces.d.ts +13 -0
- package/dist/components/MultiSelectOptionSet/styles.d.ts +31 -0
- package/dist/components/MultiSelectOptionSet/styles.js +42 -0
- package/dist/components/MultiSelectOptionSet/styles.js.map +1 -0
- package/dist/components/NestedControlRenderer/NestedControl.d.ts +86 -0
- package/dist/components/NestedControlRenderer/NestedControl.js +456 -0
- package/dist/components/NestedControlRenderer/NestedControl.js.map +1 -0
- package/dist/components/NestedControlRenderer/NestedControlError.d.ts +4 -0
- package/dist/components/NestedControlRenderer/NestedControlError.js +13 -0
- package/dist/components/NestedControlRenderer/NestedControlError.js.map +1 -0
- package/dist/components/NestedControlRenderer/NestedControlRenderer.d.ts +3 -0
- package/dist/components/NestedControlRenderer/NestedControlRenderer.js +194 -0
- package/dist/components/NestedControlRenderer/NestedControlRenderer.js.map +1 -0
- package/dist/components/NestedControlRenderer/index.d.ts +1 -0
- package/dist/components/NestedControlRenderer/index.js +2 -0
- package/dist/components/NestedControlRenderer/index.js.map +1 -0
- package/dist/components/NestedControlRenderer/interfaces.d.ts +122 -0
- package/dist/components/NestedControlRenderer/manifest/Control.d.ts +16 -0
- package/dist/components/NestedControlRenderer/manifest/Control.js +40 -0
- package/dist/components/NestedControlRenderer/manifest/Control.js.map +1 -0
- package/dist/components/NestedControlRenderer/manifest/Manifest.d.ts +5 -0
- package/dist/components/NestedControlRenderer/manifest/Manifest.js +12 -0
- package/dist/components/NestedControlRenderer/manifest/Manifest.js.map +1 -0
- package/dist/components/NestedControlRenderer/manifest/TypeGroup.d.ts +6 -0
- package/dist/components/NestedControlRenderer/manifest/TypeGroup.js +13 -0
- package/dist/components/NestedControlRenderer/manifest/TypeGroup.js.map +1 -0
- package/dist/components/NestedControlRenderer/manifest/index.d.ts +1 -0
- package/dist/components/NestedControlRenderer/manifest/index.js +2 -0
- package/dist/components/NestedControlRenderer/manifest/index.js.map +1 -0
- package/dist/components/NestedControlRenderer/manifest/property/Property.d.ts +16 -0
- package/dist/components/NestedControlRenderer/manifest/property/Property.js +34 -0
- package/dist/components/NestedControlRenderer/manifest/property/Property.js.map +1 -0
- package/dist/components/NestedControlRenderer/manifest/property/Value.d.ts +8 -0
- package/dist/components/NestedControlRenderer/manifest/property/Value.js +12 -0
- package/dist/components/NestedControlRenderer/manifest/property/Value.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/DateProperty.d.ts +5 -0
- package/dist/components/NestedControlRenderer/properties/DateProperty.js +20 -0
- package/dist/components/NestedControlRenderer/properties/DateProperty.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/FileProperty.d.ts +5 -0
- package/dist/components/NestedControlRenderer/properties/FileProperty.js +14 -0
- package/dist/components/NestedControlRenderer/properties/FileProperty.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/LookupProperty.d.ts +6 -0
- package/dist/components/NestedControlRenderer/properties/LookupProperty.js +35 -0
- package/dist/components/NestedControlRenderer/properties/LookupProperty.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/NumberProperty.d.ts +5 -0
- package/dist/components/NestedControlRenderer/properties/NumberProperty.js +15 -0
- package/dist/components/NestedControlRenderer/properties/NumberProperty.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/OptionSetProperty.d.ts +5 -0
- package/dist/components/NestedControlRenderer/properties/OptionSetProperty.js +18 -0
- package/dist/components/NestedControlRenderer/properties/OptionSetProperty.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/Property.d.ts +17 -0
- package/dist/components/NestedControlRenderer/properties/Property.js +46 -0
- package/dist/components/NestedControlRenderer/properties/Property.js.map +1 -0
- package/dist/components/NestedControlRenderer/properties/TextProperty.d.ts +5 -0
- package/dist/components/NestedControlRenderer/properties/TextProperty.js +15 -0
- package/dist/components/NestedControlRenderer/properties/TextProperty.js.map +1 -0
- package/dist/components/NestedControlRenderer/styles.d.ts +14 -0
- package/dist/components/NestedControlRenderer/styles.js +21 -0
- package/dist/components/NestedControlRenderer/styles.js.map +1 -0
- package/dist/components/NestedControlRenderer/translations.d.ts +14 -0
- package/dist/components/NestedControlRenderer/translations.js +19 -0
- package/dist/components/NestedControlRenderer/translations.js.map +1 -0
- package/dist/components/OptionSet/OptionSet.d.ts +3 -0
- package/dist/components/OptionSet/OptionSet.js +80 -0
- package/dist/components/OptionSet/OptionSet.js.map +1 -0
- package/dist/components/OptionSet/index.d.ts +2 -0
- package/dist/components/OptionSet/index.js +2 -0
- package/dist/components/OptionSet/index.js.map +1 -0
- package/dist/components/OptionSet/interfaces.d.ts +13 -0
- package/dist/components/OptionSet/shared.d.ts +5 -0
- package/dist/components/OptionSet/shared.js +19 -0
- package/dist/components/OptionSet/shared.js.map +1 -0
- package/dist/components/OptionSet/styles.d.ts +11 -0
- package/dist/components/OptionSet/styles.js +18 -0
- package/dist/components/OptionSet/styles.js.map +1 -0
- package/dist/components/OptionSet/useComboBoxTheme.d.ts +3 -0
- package/dist/components/OptionSet/useComboBoxTheme.js +61 -0
- package/dist/components/OptionSet/useComboBoxTheme.js.map +1 -0
- package/dist/components/TextField/TextField.d.ts +3 -0
- package/dist/components/TextField/TextField.js +120 -0
- package/dist/components/TextField/TextField.js.map +1 -0
- package/dist/components/TextField/index.d.ts +2 -0
- package/dist/components/TextField/index.js +2 -0
- package/dist/components/TextField/index.js.map +1 -0
- package/dist/components/TextField/interfaces.d.ts +14 -0
- package/dist/components/TwoOptions/TwoOptions.d.ts +3 -0
- package/dist/components/TwoOptions/TwoOptions.js +55 -0
- package/dist/components/TwoOptions/TwoOptions.js.map +1 -0
- package/dist/components/TwoOptions/index.d.ts +2 -0
- package/dist/components/TwoOptions/index.js +2 -0
- package/dist/components/TwoOptions/index.js.map +1 -0
- package/dist/components/TwoOptions/interfaces.d.ts +13 -0
- package/dist/components/index.d.ts +13 -0
- package/dist/components/index.js +17 -0
- package/dist/components/index.js.map +1 -0
- package/dist/constants.d.ts +15 -0
- package/dist/constants.js +35 -0
- package/dist/constants.js.map +1 -0
- package/dist/hooks/index.d.ts +7 -0
- package/dist/hooks/index.js +8 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useControl.d.ts +17 -0
- package/dist/hooks/useControl.js +67 -0
- package/dist/hooks/useControl.js.map +1 -0
- package/dist/hooks/useControlLabels.d.ts +14 -0
- package/dist/hooks/useControlLabels.js +47 -0
- package/dist/hooks/useControlLabels.js.map +1 -0
- package/dist/hooks/useControlSizing.d.ts +5 -0
- package/dist/hooks/useControlSizing.js +15 -0
- package/dist/hooks/useControlSizing.js.map +1 -0
- package/dist/hooks/useFocusIn.d.ts +1 -0
- package/dist/hooks/useFocusIn.js +33 -0
- package/dist/hooks/useFocusIn.js.map +1 -0
- package/dist/hooks/useInputBasedControl.d.ts +37 -0
- package/dist/hooks/useInputBasedControl.js +36 -0
- package/dist/hooks/useInputBasedControl.js.map +1 -0
- package/dist/hooks/useMouseOver.d.ts +1 -0
- package/dist/hooks/useMouseOver.js +23 -0
- package/dist/hooks/useMouseOver.js.map +1 -0
- package/dist/hooks/usePrevious.d.ts +1 -0
- package/dist/index.d.ts +1504 -0
- package/dist/index.js +30 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/context.d.ts +27 -0
- package/dist/interfaces/index.d.ts +9 -0
- package/dist/interfaces/index.js +2 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/parameters.d.ts +25 -0
- package/dist/interfaces/property.d.ts +67 -0
- package/dist/utils/BaseControls.d.ts +16 -0
- package/dist/utils/BaseControls.js +82 -0
- package/dist/utils/BaseControls.js.map +1 -0
- package/dist/utils/dataset/adapters/DatasetAdapter.d.ts +59 -0
- package/dist/utils/dataset/adapters/DatasetAdapter.js +229 -0
- package/dist/utils/dataset/adapters/DatasetAdapter.js.map +1 -0
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.d.ts +48 -0
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js +169 -0
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -0
- package/dist/utils/dataset/adapters/index.d.ts +2 -0
- package/dist/utils/dataset/adapters/index.js +3 -0
- package/dist/utils/dataset/adapters/index.js.map +1 -0
- package/dist/utils/dataset/index.d.ts +1 -0
- package/dist/utils/dataset/index.js +3 -0
- package/dist/utils/dataset/index.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +8 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/theme/ControlTheme.d.ts +21 -0
- package/dist/utils/theme/ControlTheme.js +39 -0
- package/dist/utils/theme/ControlTheme.js.map +1 -0
- package/dist/utils/theme/components/ThemeWrapper.d.ts +9 -0
- package/dist/utils/theme/components/ThemeWrapper.js +11 -0
- package/dist/utils/theme/components/ThemeWrapper.js.map +1 -0
- package/dist/utils/theme/components/index.d.ts +1 -0
- package/dist/utils/theme/components/index.js +2 -0
- package/dist/utils/theme/components/index.js.map +1 -0
- package/dist/utils/theme/hooks/index.d.ts +2 -0
- package/dist/utils/theme/hooks/index.js +3 -0
- package/dist/utils/theme/hooks/index.js.map +1 -0
- package/dist/utils/theme/hooks/useControlTheme.d.ts +3 -0
- package/dist/utils/theme/hooks/useControlTheme.js +12 -0
- package/dist/utils/theme/hooks/useControlTheme.js.map +1 -0
- package/dist/utils/theme/hooks/useControlThemeGenerator.d.ts +14 -0
- package/dist/utils/theme/hooks/useControlThemeGenerator.js +11 -0
- package/dist/utils/theme/hooks/useControlThemeGenerator.js.map +1 -0
- package/dist/utils/theme/index.d.ts +3 -0
- package/dist/utils/theme/index.js +5 -0
- package/dist/utils/theme/index.js.map +1 -0
- package/package.json +94 -0
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { useTheme, ThemeProvider, Callout, Text, Link, Icon, PrimaryButton, DefaultButton } from '@fluentui/react';
|
|
3
|
+
import { getNotificationStyles } from './styles.js';
|
|
4
|
+
import { useMemo, useState, useRef, useEffect } from 'react';
|
|
5
|
+
import { useResizeObserver, useThemeGenerator, CommandBar } from '@talxis/react-components';
|
|
6
|
+
import { useGridInstance } from '../../../hooks/useGridInstance.js';
|
|
7
|
+
import { useControlTheme } from '../../../../../../utils/theme/hooks/useControlTheme.js';
|
|
8
|
+
|
|
9
|
+
const Notifications = (props) => {
|
|
10
|
+
const { notifications, formatting, farItems, isActionColumn, columnAlignment } = { ...props };
|
|
11
|
+
const grid = useGridInstance();
|
|
12
|
+
const theme = useTheme();
|
|
13
|
+
const styles = getNotificationStyles(isActionColumn, columnAlignment);
|
|
14
|
+
const iconId = useMemo(() => `icon${crypto.randomUUID()}`, []);
|
|
15
|
+
const [selectedNotification, setSelectedNotification] = useState(null);
|
|
16
|
+
const commandBarRef = useRef(null);
|
|
17
|
+
const containerRef = useRef(null);
|
|
18
|
+
const observe = useResizeObserver(() => {
|
|
19
|
+
commandBarRef.current?.remeasure();
|
|
20
|
+
});
|
|
21
|
+
const overridenTheme = useThemeGenerator(theme.semanticColors.bodyText, theme.semanticColors.bodyBackground, theme.semanticColors.bodyText, formatting.themeOverride);
|
|
22
|
+
const renderActionButton = (action, buttonType) => {
|
|
23
|
+
const Button = buttonType === 'primary' ? PrimaryButton : DefaultButton;
|
|
24
|
+
return jsx(Button, { text: action.message, iconProps: action?.iconName ? {
|
|
25
|
+
iconName: action.iconName
|
|
26
|
+
} : undefined, onClick: () => action.actions.map(callback => callback()) });
|
|
27
|
+
};
|
|
28
|
+
const renderActions = (actions) => {
|
|
29
|
+
if (actions.length === 0) {
|
|
30
|
+
return jsx(Fragment, {});
|
|
31
|
+
}
|
|
32
|
+
//render actions as buttons
|
|
33
|
+
if (actions.length < 3) {
|
|
34
|
+
return jsx("div", { className: styles.calloutButtons, children: actions.map((action, i) => renderActionButton(action, i === 0 ? 'primary' : 'default')) });
|
|
35
|
+
}
|
|
36
|
+
return jsx(CommandBar, { items: actions.map((action, i) => {
|
|
37
|
+
return {
|
|
38
|
+
key: i.toString(),
|
|
39
|
+
text: action.message,
|
|
40
|
+
commandBarButtonAs: () => jsxs(Link, { onClick: () => action.actions.map(callback => callback()), className: styles.calloutLink, children: [action.iconName &&
|
|
41
|
+
jsx(Icon, { iconName: action.iconName }), action.message] }),
|
|
42
|
+
iconProps: {
|
|
43
|
+
iconName: action.iconName
|
|
44
|
+
},
|
|
45
|
+
onClick: () => {
|
|
46
|
+
action.actions.map(callback => callback());
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
}) });
|
|
50
|
+
};
|
|
51
|
+
const onNotificationClick = (notification) => {
|
|
52
|
+
if (notification.actions?.length === 1) {
|
|
53
|
+
notification.actions[0].actions.map(callback => callback());
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
setSelectedNotification(notification);
|
|
57
|
+
};
|
|
58
|
+
const getCommandBarItems = () => {
|
|
59
|
+
const items = [];
|
|
60
|
+
const overflowItems = [];
|
|
61
|
+
notifications.map(notification => {
|
|
62
|
+
const item = {
|
|
63
|
+
key: notification.uniqueId,
|
|
64
|
+
text: notification.text,
|
|
65
|
+
tooltipHostProps: {
|
|
66
|
+
...notification.buttonProps?.tooltipHostProps,
|
|
67
|
+
calloutProps: {
|
|
68
|
+
theme: contextualMenuTheme
|
|
69
|
+
},
|
|
70
|
+
tooltipProps: {
|
|
71
|
+
theme: contextualMenuTheme
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
iconProps: notification.iconName ? {
|
|
75
|
+
iconName: notification.iconName,
|
|
76
|
+
...notification.buttonProps?.iconProps
|
|
77
|
+
} : undefined,
|
|
78
|
+
...notification.buttonProps,
|
|
79
|
+
onClick: (e) => {
|
|
80
|
+
notification.buttonProps?.onClick?.(e);
|
|
81
|
+
onNotificationClick(notification);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
if (notification.buttonProps?.renderedInOverflow) {
|
|
85
|
+
overflowItems.push(item);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
items.push(item);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
return {
|
|
92
|
+
items: items,
|
|
93
|
+
overflowItems: overflowItems
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
const contextualMenuTheme = useControlTheme(grid.pcfContext.fluentDesignLanguage);
|
|
97
|
+
const { items, overflowItems } = getCommandBarItems();
|
|
98
|
+
useEffect(() => {
|
|
99
|
+
if (isActionColumn) {
|
|
100
|
+
observe(containerRef.current);
|
|
101
|
+
}
|
|
102
|
+
}, [isActionColumn]);
|
|
103
|
+
return jsxs("div", { ref: containerRef, className: styles.notificationsRoot, children: [jsx(ThemeProvider, { theme: overridenTheme, children: jsx(CommandBar, { contextualMenuTheme: contextualMenuTheme, id: iconId, componentRef: commandBarRef, styles: {
|
|
104
|
+
primarySet: styles.notificationsPrimarySet
|
|
105
|
+
}, items: items, overflowItems: overflowItems, farItems: farItems }) }), selectedNotification &&
|
|
106
|
+
jsx(Callout, { theme: contextualMenuTheme, hidden: !selectedNotification, className: styles.callout, onDismiss: () => setSelectedNotification(null), target: `#${iconId}`, children: jsxs(ThemeProvider, { className: styles.calloutContent, theme: contextualMenuTheme, children: [selectedNotification.text &&
|
|
107
|
+
jsx(Text, { title: selectedNotification.text, className: styles.calloutTitle, variant: selectedNotification.messages.length > 0 ? 'xLarge' : undefined, children: selectedNotification.text }), jsx(Text, { children: selectedNotification.messages[0] }), selectedNotification.actions &&
|
|
108
|
+
renderActions(selectedNotification.actions)] }) })] });
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
export { Notifications };
|
|
112
|
+
//# sourceMappingURL=Notifications.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Notifications.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/Notifications/Notifications.tsx"],"sourcesContent":["import { Icon, useTheme, Text, Callout, PrimaryButton, DefaultButton, Link, ICommandBar, ThemeProvider, ICommandBarItemProps } from \"@fluentui/react\"\nimport { getNotificationStyles } from \"./styles\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport { IAddControlNotificationOptions, IColumn, IControlNotificationAction, ICustomColumnFormatting } from \"@talxis/client-libraries\";\nimport { CommandBar, useResizeObserver, useThemeGenerator } from \"@talxis/react-components\";\nimport { useGridInstance } from \"../../../hooks/useGridInstance\";\nimport { useControlTheme } from \"../../../../../../utils\";\n\ninterface INotifications {\n notifications: IAddControlNotificationOptions[],\n formatting: Required<ICustomColumnFormatting>,\n isActionColumn: boolean;\n columnAlignment: IColumn['alignment'],\n farItems?: ICommandBarItemProps[]\n}\n\n\nexport const Notifications = (props: INotifications) => {\n const { notifications, formatting, farItems, isActionColumn, columnAlignment } = { ...props };\n const grid = useGridInstance();\n const theme = useTheme();\n const styles = getNotificationStyles(isActionColumn, columnAlignment);\n const iconId = useMemo(() => `icon${crypto.randomUUID()}`, []);\n const [selectedNotification, setSelectedNotification] = useState<IAddControlNotificationOptions | null>(null);\n const commandBarRef = useRef<ICommandBar>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const observe = useResizeObserver(() => {\n commandBarRef.current?.remeasure();\n })\n const overridenTheme = useThemeGenerator(theme.semanticColors.bodyText, theme.semanticColors.bodyBackground, theme.semanticColors.bodyText, formatting.themeOverride);\n\n const renderActionButton = (action: IControlNotificationAction, buttonType: 'primary' | 'default') => {\n const Button = buttonType === 'primary' ? PrimaryButton : DefaultButton;\n return <Button\n text={action.message}\n iconProps={action?.iconName ? {\n iconName: action.iconName\n } : undefined}\n onClick={() => action.actions.map(callback => callback())} />\n }\n\n const renderActions = (actions: IControlNotificationAction[]): JSX.Element => {\n if (actions.length === 0) {\n return <></>\n }\n //render actions as buttons\n if (actions.length < 3) {\n return <div className={styles.calloutButtons}>\n {actions.map((action, i) => renderActionButton(action, i === 0 ? 'primary' : 'default'))}\n </div>\n }\n return <CommandBar items={actions.map((action, i) => {\n return {\n key: i.toString(),\n text: action.message,\n commandBarButtonAs: () => <Link onClick={() => action.actions.map(callback => callback())} className={styles.calloutLink}>\n {action.iconName &&\n <Icon iconName={action.iconName} />\n }\n {action.message}\n </Link>,\n iconProps: {\n iconName: action.iconName\n },\n onClick: () => {\n action.actions.map(callback => callback())\n }\n }\n })} />\n }\n\n const onNotificationClick = (notification: IAddControlNotificationOptions) => {\n if (notification.actions?.length === 1) {\n notification.actions[0].actions.map(callback => callback());\n return;\n }\n setSelectedNotification(notification);\n };\n\n\n const getCommandBarItems = (): { items: ICommandBarItemProps[], overflowItems: ICommandBarItemProps[] } => {\n const items: ICommandBarItemProps[] = [];\n const overflowItems: ICommandBarItemProps[] = [];\n\n notifications.map(notification => {\n const item: ICommandBarItemProps = {\n key: notification.uniqueId,\n text: notification.text,\n tooltipHostProps: {\n ...notification.buttonProps?.tooltipHostProps,\n calloutProps: {\n theme: contextualMenuTheme\n },\n tooltipProps: {\n theme: contextualMenuTheme\n },\n },\n iconProps: notification.iconName ? {\n iconName: notification.iconName,\n ...notification.buttonProps?.iconProps\n } : undefined,\n ...notification.buttonProps,\n onClick: (e) => {\n notification.buttonProps?.onClick?.(e);\n onNotificationClick(notification);\n }\n }\n if (notification.buttonProps?.renderedInOverflow) {\n overflowItems.push(item);\n }\n else {\n items.push(item);\n }\n })\n return {\n items: items,\n overflowItems: overflowItems\n }\n }\n\n const contextualMenuTheme = useControlTheme(grid.pcfContext.fluentDesignLanguage);\n const { items, overflowItems } = getCommandBarItems();\n\n useEffect(() => {\n if (isActionColumn) {\n observe(containerRef.current!);\n }\n }, [isActionColumn]);\n\n\n return <div ref={containerRef} className={styles.notificationsRoot}>\n <ThemeProvider theme={overridenTheme}>\n <CommandBar\n contextualMenuTheme={contextualMenuTheme}\n id={iconId}\n componentRef={commandBarRef}\n styles={{\n primarySet: styles.notificationsPrimarySet\n }}\n items={items}\n overflowItems={overflowItems}\n farItems={farItems} />\n </ThemeProvider>\n {selectedNotification &&\n <Callout\n theme={contextualMenuTheme}\n hidden={!selectedNotification}\n className={styles.callout}\n onDismiss={() => setSelectedNotification(null)}\n target={`#${iconId}`}>\n <ThemeProvider className={styles.calloutContent} theme={contextualMenuTheme}>\n {selectedNotification.text &&\n <Text title={selectedNotification.text} className={styles.calloutTitle} variant={selectedNotification.messages.length > 0 ? 'xLarge' : undefined}>{selectedNotification.text}</Text>\n }\n <Text>{selectedNotification.messages[0]}</Text>\n {selectedNotification.actions &&\n renderActions(selectedNotification.actions)\n }\n </ThemeProvider>\n </Callout>\n }\n </div>\n}"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;AAiBa,MAAA,aAAa,GAAG,CAAC,KAAqB,KAAI;AACnD,IAAA,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;AAC9F,IAAA,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;AAC/B,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,qBAAqB,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;AACtE,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA,IAAA,EAAO,MAAM,CAAC,UAAU,EAAE,CAAA,CAAE,EAAE,EAAE,CAAC,CAAC;IAC/D,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAwC,IAAI,CAAC,CAAC;AAC9G,IAAA,MAAM,aAAa,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;AAChD,IAAA,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;AAElD,IAAA,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAK;AACnC,QAAA,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;AACvC,KAAC,CAAC,CAAA;IACF,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;AAEtK,IAAA,MAAM,kBAAkB,GAAG,CAAC,MAAkC,EAAE,UAAiC,KAAI;AACjG,QAAA,MAAM,MAAM,GAAG,UAAU,KAAK,SAAS,GAAG,aAAa,GAAG,aAAa,CAAC;AACxE,QAAA,OAAOA,IAAC,MAAM,EAAA,EACV,IAAI,EAAE,MAAM,CAAC,OAAO,EACpB,SAAS,EAAE,MAAM,EAAE,QAAQ,GAAG;gBAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC5B,GAAG,SAAS,EACb,OAAO,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC,EAAA,CAAI,CAAA;AACrE,KAAC,CAAA;AAED,IAAA,MAAM,aAAa,GAAG,CAAC,OAAqC,KAAiB;AACzE,QAAA,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AACtB,YAAA,OAAOA,iBAAK,CAAA;AACf,SAAA;;AAED,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACpB,YAAA,OAAOA,aAAK,SAAS,EAAE,MAAM,CAAC,cAAc,EACvC,QAAA,EAAA,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,GACtF,CAAA;AACT,SAAA;AACD,QAAA,OAAOA,GAAC,CAAA,UAAU,EAAC,EAAA,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAI;gBAChD,OAAO;AACH,oBAAA,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACjB,IAAI,EAAE,MAAM,CAAC,OAAO;AACpB,oBAAA,kBAAkB,EAAE,MAAMC,KAAC,IAAI,EAAA,EAAC,OAAO,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,EACnH,QAAA,EAAA,CAAA,MAAM,CAAC,QAAQ;AACZ,gCAAAD,GAAA,CAAC,IAAI,EAAA,EAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAA,CAAI,EAEtC,MAAM,CAAC,OAAO,CACZ,EAAA,CAAA;AACP,oBAAA,SAAS,EAAE;wBACP,QAAQ,EAAE,MAAM,CAAC,QAAQ;AAC5B,qBAAA;oBACD,OAAO,EAAE,MAAK;AACV,wBAAA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAA;qBAC7C;iBACJ,CAAA;aACJ,CAAC,GAAI,CAAA;AACV,KAAC,CAAA;AAED,IAAA,MAAM,mBAAmB,GAAG,CAAC,YAA4C,KAAI;AACzE,QAAA,IAAI,YAAY,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,EAAE;AACpC,YAAA,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC;YAC5D,OAAO;AACV,SAAA;QACD,uBAAuB,CAAC,YAAY,CAAC,CAAC;AAC1C,KAAC,CAAC;IAGF,MAAM,kBAAkB,GAAG,MAA+E;QACtG,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,MAAM,aAAa,GAA2B,EAAE,CAAC;AAEjD,QAAA,aAAa,CAAC,GAAG,CAAC,YAAY,IAAG;AAC7B,YAAA,MAAM,IAAI,GAAyB;gBAC/B,GAAG,EAAE,YAAY,CAAC,QAAQ;gBAC1B,IAAI,EAAE,YAAY,CAAC,IAAI;AACvB,gBAAA,gBAAgB,EAAE;AACd,oBAAA,GAAG,YAAY,CAAC,WAAW,EAAE,gBAAgB;AAC7C,oBAAA,YAAY,EAAE;AACV,wBAAA,KAAK,EAAE,mBAAmB;AAC7B,qBAAA;AACD,oBAAA,YAAY,EAAE;AACV,wBAAA,KAAK,EAAE,mBAAmB;AAC7B,qBAAA;AACJ,iBAAA;AACD,gBAAA,SAAS,EAAE,YAAY,CAAC,QAAQ,GAAG;oBAC/B,QAAQ,EAAE,YAAY,CAAC,QAAQ;AAC/B,oBAAA,GAAG,YAAY,CAAC,WAAW,EAAE,SAAS;iBACzC,GAAG,SAAS;gBACb,GAAG,YAAY,CAAC,WAAW;AAC3B,gBAAA,OAAO,EAAE,CAAC,CAAC,KAAI;oBACX,YAAY,CAAC,WAAW,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;oBACvC,mBAAmB,CAAC,YAAY,CAAC,CAAC;iBACrC;aACJ,CAAA;AACD,YAAA,IAAI,YAAY,CAAC,WAAW,EAAE,kBAAkB,EAAE;AAC9C,gBAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,aAAA;AACI,iBAAA;AACD,gBAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,aAAA;AACL,SAAC,CAAC,CAAA;QACF,OAAO;AACH,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,aAAa,EAAE,aAAa;SAC/B,CAAA;AACL,KAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAClF,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAEtD,SAAS,CAAC,MAAK;AACX,QAAA,IAAI,cAAc,EAAE;AAChB,YAAA,OAAO,CAAC,YAAY,CAAC,OAAQ,CAAC,CAAC;AAClC,SAAA;AACL,KAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;AAGrB,IAAA,OAAOC,IAAK,CAAA,KAAA,EAAA,EAAA,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,iBAAiB,EAC9D,QAAA,EAAA,CAAAD,GAAA,CAAC,aAAa,EAAA,EAAC,KAAK,EAAE,cAAc,EAChC,QAAA,EAAAA,GAAA,CAAC,UAAU,EAAA,EACP,mBAAmB,EAAE,mBAAmB,EACxC,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE;wBACJ,UAAU,EAAE,MAAM,CAAC,uBAAuB;AAC7C,qBAAA,EACD,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,EAAI,CAAA,EAAA,CACd,EACf,oBAAoB;gBACjBA,GAAC,CAAA,OAAO,IACJ,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,CAAC,oBAAoB,EAC7B,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,SAAS,EAAE,MAAM,uBAAuB,CAAC,IAAI,CAAC,EAC9C,MAAM,EAAE,CAAA,CAAA,EAAI,MAAM,CAAE,CAAA,EAAA,QAAA,EACpBC,IAAC,CAAA,aAAa,EAAC,EAAA,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE,mBAAmB,EAAA,QAAA,EAAA,CACtE,oBAAoB,CAAC,IAAI;gCACtBD,GAAC,CAAA,IAAI,IAAC,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,oBAAoB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,GAAG,SAAS,YAAG,oBAAoB,CAAC,IAAI,EAAA,CAAQ,EAExLA,GAAA,CAAC,IAAI,EAAE,EAAA,QAAA,EAAA,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAQ,CAAA,EAC9C,oBAAoB,CAAC,OAAO;gCACzB,aAAa,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAEnC,EAAA,CAAA,EAAA,CACV,IAEZ,CAAA;AACV;;;;"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { IColumn } from "@talxis/client-libraries";
|
|
2
|
+
export declare const getNotificationStyles: (isActionColumn: boolean, columnAlignment: Required<IColumn['alignment']>) => import("@fluentui/react").IProcessedStyleSet<{
|
|
3
|
+
callout: {
|
|
4
|
+
width: number;
|
|
5
|
+
padding: string;
|
|
6
|
+
};
|
|
7
|
+
calloutContent: {
|
|
8
|
+
display: string;
|
|
9
|
+
flexDirection: string;
|
|
10
|
+
gap: number;
|
|
11
|
+
'.ms-CommandBar-primaryCommand': {
|
|
12
|
+
gap: number;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
calloutTitle: {
|
|
16
|
+
overflow: string;
|
|
17
|
+
textOverflow: string;
|
|
18
|
+
};
|
|
19
|
+
calloutLink: {
|
|
20
|
+
i: {
|
|
21
|
+
position: string;
|
|
22
|
+
top: number;
|
|
23
|
+
marginRight: number;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
calloutButtons: {
|
|
27
|
+
display: string;
|
|
28
|
+
justifyContent: string;
|
|
29
|
+
gap: number;
|
|
30
|
+
};
|
|
31
|
+
notificationsRoot: {
|
|
32
|
+
minWidth: number | undefined;
|
|
33
|
+
flex: number | undefined;
|
|
34
|
+
};
|
|
35
|
+
notificationsPrimarySet: {
|
|
36
|
+
order: number;
|
|
37
|
+
justifyContent: string | undefined;
|
|
38
|
+
};
|
|
39
|
+
}>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { mergeStyleSets } from '@fluentui/react';
|
|
2
|
+
import { getJustifyContent } from '../styles.js';
|
|
3
|
+
|
|
4
|
+
const getNotificationStyles = (isActionColumn, columnAlignment) => {
|
|
5
|
+
return mergeStyleSets({
|
|
6
|
+
callout: {
|
|
7
|
+
width: 320,
|
|
8
|
+
padding: '20px 24px',
|
|
9
|
+
},
|
|
10
|
+
calloutContent: {
|
|
11
|
+
display: 'flex',
|
|
12
|
+
flexDirection: 'column',
|
|
13
|
+
gap: 20,
|
|
14
|
+
'.ms-CommandBar-primaryCommand': {
|
|
15
|
+
gap: 10
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
calloutTitle: {
|
|
19
|
+
overflow: 'hidden',
|
|
20
|
+
textOverflow: 'ellipsis'
|
|
21
|
+
},
|
|
22
|
+
calloutLink: {
|
|
23
|
+
'i': {
|
|
24
|
+
position: 'relative',
|
|
25
|
+
top: 1,
|
|
26
|
+
marginRight: 3
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
calloutButtons: {
|
|
30
|
+
display: 'flex',
|
|
31
|
+
justifyContent: 'flex-end',
|
|
32
|
+
gap: 8
|
|
33
|
+
},
|
|
34
|
+
notificationsRoot: {
|
|
35
|
+
minWidth: isActionColumn ? 0 : undefined,
|
|
36
|
+
flex: isActionColumn ? 1 : undefined,
|
|
37
|
+
},
|
|
38
|
+
notificationsPrimarySet: {
|
|
39
|
+
order: 2,
|
|
40
|
+
justifyContent: isActionColumn ? getJustifyContent(columnAlignment) : undefined
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export { getNotificationStyles };
|
|
46
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/Notifications/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\"\nimport { getJustifyContent } from \"../styles\"\n\nexport const getNotificationStyles = (isActionColumn: boolean, columnAlignment: Required<IColumn['alignment']>) => {\n return mergeStyleSets({\n callout: {\n width: 320,\n padding: '20px 24px',\n },\n calloutContent: {\n display: 'flex',\n flexDirection: 'column',\n gap: 20,\n '.ms-CommandBar-primaryCommand': {\n gap: 10\n }\n },\n calloutTitle: {\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n calloutLink: {\n 'i': {\n position: 'relative',\n top: 1,\n marginRight: 3\n }\n },\n calloutButtons: {\n display: 'flex',\n justifyContent: 'flex-end',\n gap: 8\n },\n notificationsRoot: {\n minWidth: isActionColumn ? 0 : undefined,\n flex: isActionColumn ? 1 : undefined,\n },\n notificationsPrimarySet: {\n order: 2,\n justifyContent: isActionColumn ? getJustifyContent(columnAlignment) : undefined\n }\n })\n}"],"names":[],"mappings":";;;MAIa,qBAAqB,GAAG,CAAC,cAAuB,EAAE,eAA+C,KAAI;AAC9G,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,OAAO,EAAE;AACL,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,OAAO,EAAE,WAAW;AACvB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,GAAG,EAAE,EAAE;AACP,YAAA,+BAA+B,EAAE;AAC7B,gBAAA,GAAG,EAAE,EAAE;AACV,aAAA;AACJ,SAAA;AACD,QAAA,YAAY,EAAE;AACV,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,UAAU;AAC3B,SAAA;AACD,QAAA,WAAW,EAAE;AACT,YAAA,GAAG,EAAE;AACD,gBAAA,QAAQ,EAAE,UAAU;AACpB,gBAAA,GAAG,EAAE,CAAC;AACN,gBAAA,WAAW,EAAE,CAAC;AACjB,aAAA;AACJ,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,cAAc,EAAE,UAAU;AAC1B,YAAA,GAAG,EAAE,CAAC;AACT,SAAA;AACD,QAAA,iBAAiB,EAAE;YACf,QAAQ,EAAE,cAAc,GAAG,CAAC,GAAG,SAAS;YACxC,IAAI,EAAE,cAAc,GAAG,CAAC,GAAG,SAAS;AACvC,SAAA;AACD,QAAA,uBAAuB,EAAE;AACrB,YAAA,KAAK,EAAE,CAAC;AACR,YAAA,cAAc,EAAE,cAAc,GAAG,iBAAiB,CAAC,eAAe,CAAC,GAAG,SAAS;AAClF,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ITheme } from "@fluentui/react";
|
|
2
|
+
import { IColumn } from "@talxis/client-libraries";
|
|
3
|
+
export declare const getJustifyContent: (columnAlignment: Required<IColumn['alignment']>) => "center" | "flex-start" | "flex-end" | undefined;
|
|
4
|
+
export declare const getCellStyles: () => import("@fluentui/react").IProcessedStyleSet<{
|
|
5
|
+
cellRoot: {
|
|
6
|
+
height: string;
|
|
7
|
+
width: string;
|
|
8
|
+
display: string;
|
|
9
|
+
alignItems: string;
|
|
10
|
+
justifyContent: string;
|
|
11
|
+
};
|
|
12
|
+
checkbox: {
|
|
13
|
+
marginRight: number;
|
|
14
|
+
};
|
|
15
|
+
}>;
|
|
16
|
+
export declare const getInnerCellStyles: (isEditing: boolean, theme: ITheme, columnAlignment: IColumn['alignment']) => import("@fluentui/react").IProcessedStyleSet<{
|
|
17
|
+
innerCellRoot: {
|
|
18
|
+
flex: number;
|
|
19
|
+
display: string;
|
|
20
|
+
overflow: string;
|
|
21
|
+
alignItems: string;
|
|
22
|
+
height: string;
|
|
23
|
+
marginLeft: number | undefined;
|
|
24
|
+
marginRight: number | undefined;
|
|
25
|
+
};
|
|
26
|
+
shimmerWrapper: {
|
|
27
|
+
height: number;
|
|
28
|
+
};
|
|
29
|
+
shimmerRoot: {
|
|
30
|
+
width: string;
|
|
31
|
+
paddingLeft: number;
|
|
32
|
+
paddingRight: number;
|
|
33
|
+
};
|
|
34
|
+
errorIconRoot: {
|
|
35
|
+
color: string;
|
|
36
|
+
};
|
|
37
|
+
uneditableIconRoot: {
|
|
38
|
+
color: string;
|
|
39
|
+
};
|
|
40
|
+
}>;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { mergeStyleSets } from '@fluentui/react';
|
|
2
|
+
|
|
3
|
+
const getJustifyContent = (columnAlignment) => {
|
|
4
|
+
switch (columnAlignment) {
|
|
5
|
+
case 'left': {
|
|
6
|
+
return 'flex-start';
|
|
7
|
+
}
|
|
8
|
+
case 'center': {
|
|
9
|
+
return 'center';
|
|
10
|
+
}
|
|
11
|
+
case 'right': {
|
|
12
|
+
return 'flex-end';
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
const getCellStyles = () => {
|
|
17
|
+
return mergeStyleSets({
|
|
18
|
+
cellRoot: {
|
|
19
|
+
height: '100%',
|
|
20
|
+
width: '100%',
|
|
21
|
+
display: 'flex',
|
|
22
|
+
alignItems: 'center',
|
|
23
|
+
justifyContent: 'center'
|
|
24
|
+
},
|
|
25
|
+
checkbox: {
|
|
26
|
+
marginRight: 0.5
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
const getInnerCellStyles = (isEditing, theme, columnAlignment) => {
|
|
31
|
+
return mergeStyleSets({
|
|
32
|
+
innerCellRoot: {
|
|
33
|
+
flex: 1,
|
|
34
|
+
display: 'flex',
|
|
35
|
+
overflow: 'hidden',
|
|
36
|
+
alignItems: 'center',
|
|
37
|
+
height: '100%',
|
|
38
|
+
marginLeft: isEditing ? -1 : undefined,
|
|
39
|
+
marginRight: isEditing ? -1 : undefined,
|
|
40
|
+
},
|
|
41
|
+
shimmerWrapper: {
|
|
42
|
+
height: 10
|
|
43
|
+
},
|
|
44
|
+
shimmerRoot: {
|
|
45
|
+
width: '100%',
|
|
46
|
+
paddingLeft: 10,
|
|
47
|
+
paddingRight: 10
|
|
48
|
+
},
|
|
49
|
+
errorIconRoot: {
|
|
50
|
+
color: `${theme.semanticColors.errorIcon} !important`
|
|
51
|
+
},
|
|
52
|
+
uneditableIconRoot: {
|
|
53
|
+
color: `${theme.semanticColors.bodyText} !important`
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export { getCellStyles, getInnerCellStyles, getJustifyContent };
|
|
59
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../../../src/components/Grid/core/components/Cell/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\";\nimport { IColumn } from \"@talxis/client-libraries\";\n\nexport const getJustifyContent = (columnAlignment: Required<IColumn['alignment']>) => {\n switch(columnAlignment) {\n case 'left': {\n return 'flex-start'\n }\n case 'center': {\n return 'center'\n }\n case 'right': {\n return 'flex-end'\n }\n }\n}\n\n\nexport const getCellStyles = () => {\n return mergeStyleSets({\n cellRoot: {\n height: '100%',\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n },\n checkbox: {\n marginRight: 0.5\n }\n })\n}\n\nexport const getInnerCellStyles = (isEditing: boolean, theme: ITheme, columnAlignment: IColumn['alignment']) => {\n return mergeStyleSets({\n innerCellRoot: {\n flex: 1,\n display: 'flex',\n overflow: 'hidden',\n alignItems: 'center',\n height: '100%',\n marginLeft: isEditing ? - 1 : undefined,\n marginRight: isEditing ? - 1 : undefined,\n },\n\n shimmerWrapper: {\n height: 10\n },\n shimmerRoot: {\n width: '100%',\n paddingLeft: 10,\n paddingRight: 10\n },\n errorIconRoot: {\n color: `${theme.semanticColors.errorIcon} !important`\n },\n uneditableIconRoot: {\n color: `${theme.semanticColors.bodyText} !important`\n }\n })\n}\n\n"],"names":[],"mappings":";;AAGa,MAAA,iBAAiB,GAAG,CAAC,eAA+C,KAAI;AACjF,IAAA,QAAO,eAAe;QAClB,KAAK,MAAM,EAAE;AACT,YAAA,OAAO,YAAY,CAAA;AACtB,SAAA;QACD,KAAK,QAAQ,EAAE;AACX,YAAA,OAAO,QAAQ,CAAA;AAClB,SAAA;QACD,KAAK,OAAO,EAAE;AACV,YAAA,OAAO,UAAU,CAAA;AACpB,SAAA;AACJ,KAAA;AACL,EAAC;AAGM,MAAM,aAAa,GAAG,MAAK;AAC9B,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,QAAQ,EAAE;AACN,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,UAAU,EAAE,QAAQ;AACpB,YAAA,cAAc,EAAE,QAAQ;AAC3B,SAAA;AACD,QAAA,QAAQ,EAAE;AACN,YAAA,WAAW,EAAE,GAAG;AACnB,SAAA;AACJ,KAAA,CAAC,CAAA;AACN,EAAC;AAEY,MAAA,kBAAkB,GAAG,CAAC,SAAkB,EAAE,KAAa,EAAE,eAAqC,KAAI;AAC3G,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,aAAa,EAAE;AACX,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,UAAU,EAAE,QAAQ;AACpB,YAAA,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,SAAS,GAAG,CAAE,CAAC,GAAG,SAAS;YACvC,WAAW,EAAE,SAAS,GAAG,CAAE,CAAC,GAAG,SAAS;AAC3C,SAAA;AAED,QAAA,cAAc,EAAE;AACZ,YAAA,MAAM,EAAE,EAAE;AACb,SAAA;AACD,QAAA,WAAW,EAAE;AACT,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,WAAW,EAAE,EAAE;AACf,YAAA,YAAY,EAAE,EAAE;AACnB,SAAA;AACD,QAAA,aAAa,EAAE;AACX,YAAA,KAAK,EAAE,CAAG,EAAA,KAAK,CAAC,cAAc,CAAC,SAAS,CAAa,WAAA,CAAA;AACxD,SAAA;AACD,QAAA,kBAAkB,EAAE;AAChB,YAAA,KAAK,EAAE,CAAG,EAAA,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAa,WAAA,CAAA;AACvD,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useState, useMemo, useRef } from 'react';
|
|
3
|
+
import { useTheme, CommandBarButton, Icon, Label } from '@fluentui/react';
|
|
4
|
+
import { FilterCallout } from '../../../filtering/components/FilterCallout/FilterCallout.js';
|
|
5
|
+
import { SortingContextualMenu } from '../../../sorting/components/SortingContextualMenu/SortingContextualMenu.js';
|
|
6
|
+
import { getColumnHeaderStyles } from './styles.js';
|
|
7
|
+
import { useGridInstance } from '../../hooks/useGridInstance.js';
|
|
8
|
+
|
|
9
|
+
const ColumnHeader = (props) => {
|
|
10
|
+
const grid = useGridInstance();
|
|
11
|
+
const column = props.baseColumn;
|
|
12
|
+
const [columnHeaderContextualMenuProps, setColumnHeaderContextualMenuProps] = useState(null);
|
|
13
|
+
const [filterCalloutProps, setFilterCalloutProps] = useState(null);
|
|
14
|
+
const theme = useTheme();
|
|
15
|
+
const columnHeaderStyles = useMemo(() => getColumnHeaderStyles(theme, column.alignment), [theme, column.alignment]);
|
|
16
|
+
const buttonRef = useRef(null);
|
|
17
|
+
const onClick = () => {
|
|
18
|
+
if ((column.isFilterable === false && column.disableSorting && !column.canBeAggregated)) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
setColumnHeaderContextualMenuProps({
|
|
22
|
+
column: column,
|
|
23
|
+
onDismiss: (e, dismissAll, showFilterCallout) => {
|
|
24
|
+
setColumnHeaderContextualMenuProps(null);
|
|
25
|
+
if (!showFilterCallout) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
setFilterCalloutProps({
|
|
29
|
+
column: column,
|
|
30
|
+
onDismiss: () => {
|
|
31
|
+
setFilterCalloutProps(null);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
const preventDismissOnEvent = (e) => {
|
|
38
|
+
if (e.type !== 'scroll') {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
const target = e.target;
|
|
42
|
+
//check for vertical scroll
|
|
43
|
+
if (target?.classList?.contains('ag-body-viewport') || target?.classList?.contains('ag-body-vertical-scroll-viewport')) {
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
//ios outputs horizontal scroll if focused in callout btn which would result in dismiss of callout
|
|
47
|
+
if (/iPad|iPhone|iPod/.test(navigator.userAgent)) {
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
return false;
|
|
51
|
+
};
|
|
52
|
+
return (jsxs(Fragment, { children: [jsxs(CommandBarButton, { elementRef: buttonRef, title: column.displayName, className: columnHeaderStyles.root, onClick: onClick, children: [grid.isEditable && !column.isEditable && column.type !== 'action' && jsx(Icon, { className: columnHeaderStyles.editIcon, iconName: 'Uneditable' }), jsxs("div", { className: columnHeaderStyles.labelWrapper, children: [jsx(Label, { className: columnHeaderStyles.label, children: column.displayName }), column.isRequired &&
|
|
53
|
+
jsx("span", { className: columnHeaderStyles.requiredSymbol, children: "*" })] }), jsxs("div", { className: columnHeaderStyles.filterSortIcons, children: [column.isSorted && jsx(Icon, { iconName: column.isSortedDescending ? 'SortDown' : 'SortUp' }), column.isFiltered && jsx(Icon, { iconName: 'Filter' })] })] }), columnHeaderContextualMenuProps &&
|
|
54
|
+
jsx(SortingContextualMenu, { target: buttonRef, calloutProps: {
|
|
55
|
+
preventDismissOnEvent: preventDismissOnEvent
|
|
56
|
+
}, ...columnHeaderContextualMenuProps }), filterCalloutProps &&
|
|
57
|
+
jsx(FilterCallout, { preventDismissOnEvent: preventDismissOnEvent, target: buttonRef, ...filterCalloutProps })] }));
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export { ColumnHeader };
|
|
61
|
+
//# sourceMappingURL=ColumnHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColumnHeader.js","sources":["../../../../../../src/components/Grid/core/components/ColumnHeader/ColumnHeader.tsx"],"sourcesContent":["import { useMemo, useRef, useState } from 'react';\nimport { CommandBarButton, Icon, Label, useTheme } from '@fluentui/react';\nimport { FilterCallout, IFilterCallout } from '../../../filtering/components/FilterCallout/FilterCallout';\nimport { IGridColumn } from '../../interfaces/IGridColumn';\nimport { ISortingContextualMenu, SortingContextualMenu } from '../../../sorting/components/SortingContextualMenu/SortingContextualMenu';\nimport { getColumnHeaderStyles } from './styles';\nimport { useGridInstance } from '../../hooks/useGridInstance';\nimport React from 'react';\n\nexport interface IColumnHeader {\n baseColumn: IGridColumn;\n}\n\nexport const ColumnHeader = (props: IColumnHeader) => {\n const grid = useGridInstance();\n const column = props.baseColumn;\n const [columnHeaderContextualMenuProps, setColumnHeaderContextualMenuProps] = useState<ISortingContextualMenu | null>(null);\n const [filterCalloutProps, setFilterCalloutProps] = useState<IFilterCallout | null>(null);\n const theme = useTheme();\n const columnHeaderStyles = useMemo(() => getColumnHeaderStyles(theme, column.alignment), [theme, column.alignment])\n const buttonRef = useRef<HTMLElement>(null);\n\n const onClick = () => {\n if ((column.isFilterable === false && column.disableSorting && !column.canBeAggregated)) {\n return;\n }\n setColumnHeaderContextualMenuProps({\n column: column,\n onDismiss: (e, dismissAll, showFilterCallout) => {\n setColumnHeaderContextualMenuProps(null);\n if (!showFilterCallout) {\n return;\n }\n setFilterCalloutProps({\n column: column,\n onDismiss: () => {\n setFilterCalloutProps(null)\n }\n })\n }\n });\n }\n const preventDismissOnEvent = (e: Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element> | React.FocusEvent<Element, Element>) => {\n if(e.type !== 'scroll') {\n return false;\n }\n const target = e.target as HTMLElement;\n //check for vertical scroll\n if (target?.classList?.contains('ag-body-viewport') || target?.classList?.contains('ag-body-vertical-scroll-viewport')) {\n return true;\n }\n //ios outputs horizontal scroll if focused in callout btn which would result in dismiss of callout\n if (/iPad|iPhone|iPod/.test(navigator.userAgent)) {\n return true;\n }\n return false;\n }\n return (\n <>\n <CommandBarButton\n elementRef={buttonRef}\n title={column.displayName}\n className={columnHeaderStyles.root}\n onClick={onClick}\n >\n {grid.isEditable && !column.isEditable && column.type !== 'action' && <Icon className={columnHeaderStyles.editIcon} iconName='Uneditable' />}\n <div className={columnHeaderStyles.labelWrapper}>\n <Label className={columnHeaderStyles.label}>{column.displayName}</Label>\n {column.isRequired &&\n <span className={columnHeaderStyles.requiredSymbol}>*</span>\n }\n </div>\n <div className={columnHeaderStyles.filterSortIcons}>\n {column.isSorted && <Icon iconName={column.isSortedDescending ? 'SortDown' : 'SortUp'} />}\n {column.isFiltered && <Icon iconName='Filter' />}\n </div>\n </CommandBarButton>\n {columnHeaderContextualMenuProps &&\n <SortingContextualMenu \n target={buttonRef}\n calloutProps={{\n preventDismissOnEvent: preventDismissOnEvent\n }} \n {...columnHeaderContextualMenuProps} />\n }\n {filterCalloutProps &&\n <FilterCallout preventDismissOnEvent={preventDismissOnEvent} target={buttonRef} {...filterCalloutProps} />\n }\n </>\n )\n};"],"names":["_jsxs","_Fragment","_jsx"],"mappings":";;;;;;;;AAaa,MAAA,YAAY,GAAG,CAAC,KAAoB,KAAI;AACjD,IAAA,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;AAC/B,IAAA,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;IAChC,MAAM,CAAC,+BAA+B,EAAE,kCAAkC,CAAC,GAAG,QAAQ,CAAgC,IAAI,CAAC,CAAC;IAC5H,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAwB,IAAI,CAAC,CAAC;AAC1F,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;AACnH,IAAA,MAAM,SAAS,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,MAAK;AACjB,QAAA,KAAK,MAAM,CAAC,YAAY,KAAK,KAAK,IAAI,MAAM,CAAC,cAAc,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG;YACrF,OAAO;AACV,SAAA;AACD,QAAA,kCAAkC,CAAC;AAC/B,YAAA,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,iBAAiB,KAAI;gBAC5C,kCAAkC,CAAC,IAAI,CAAC,CAAC;gBACzC,IAAI,CAAC,iBAAiB,EAAE;oBACpB,OAAO;AACV,iBAAA;AACD,gBAAA,qBAAqB,CAAC;AAClB,oBAAA,MAAM,EAAE,MAAM;oBACd,SAAS,EAAE,MAAK;wBACZ,qBAAqB,CAAC,IAAI,CAAC,CAAA;qBAC9B;AACJ,iBAAA,CAAC,CAAA;aACL;AACJ,SAAA,CAAC,CAAC;AACP,KAAC,CAAA;AACD,IAAA,MAAM,qBAAqB,GAAG,CAAC,CAAoH,KAAI;AACnJ,QAAA,IAAG,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;AACpB,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;AACD,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,MAAsB,CAAC;;AAExC,QAAA,IAAI,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,kCAAkC,CAAC,EAAE;AACpH,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;;QAED,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;AAC9C,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;AACjB,KAAC,CAAA;AACD,IAAA,QACIA,IACI,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CAAAD,IAAA,CAAC,gBAAgB,EAAA,EACb,UAAU,EAAE,SAAS,EACrB,KAAK,EAAE,MAAM,CAAC,WAAW,EACzB,SAAS,EAAE,kBAAkB,CAAC,IAAI,EAClC,OAAO,EAAE,OAAO,EAAA,QAAA,EAAA,CAEf,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAIE,IAAC,IAAI,EAAA,EAAC,SAAS,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAC,YAAY,EAAA,CAAG,EAC5IF,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,kBAAkB,CAAC,YAAY,aAC3CE,GAAC,CAAA,KAAK,EAAC,EAAA,SAAS,EAAE,kBAAkB,CAAC,KAAK,EAAA,QAAA,EAAG,MAAM,CAAC,WAAW,GAAS,EACvE,MAAM,CAAC,UAAU;gCACdA,GAAM,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,kBAAkB,CAAC,cAAc,EAAU,QAAA,EAAA,GAAA,EAAA,CAAA,CAAA,EAAA,CAE9D,EACNF,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,kBAAkB,CAAC,eAAe,EAC7C,QAAA,EAAA,CAAA,MAAM,CAAC,QAAQ,IAAIE,GAAC,CAAA,IAAI,EAAC,EAAA,QAAQ,EAAE,MAAM,CAAC,kBAAkB,GAAG,UAAU,GAAG,QAAQ,EAAI,CAAA,EACxF,MAAM,CAAC,UAAU,IAAIA,GAAA,CAAC,IAAI,EAAA,EAAC,QAAQ,EAAC,QAAQ,EAAG,CAAA,CAAA,EAAA,CAC9C,CACS,EAAA,CAAA,EAClB,+BAA+B;AAC5B,gBAAAA,GAAA,CAAC,qBAAqB,EAClB,EAAA,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE;AACV,wBAAA,qBAAqB,EAAE,qBAAqB;qBAC/C,EACG,GAAA,+BAA+B,EAAI,CAAA,EAE9C,kBAAkB;AACf,gBAAAA,GAAA,CAAC,aAAa,EAAA,EAAC,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAM,GAAA,kBAAkB,EAAI,CAAA,CAAA,EAAA,CAE/G,EACN;AACL;;;;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { useTheme, ThemeProvider, Checkbox } from '@fluentui/react';
|
|
3
|
+
import { useContext, useEffect } from 'react';
|
|
4
|
+
import { useGridInstance } from '../../../../hooks/useGridInstance.js';
|
|
5
|
+
import { getGlobalCheckboxStyles } from './styles.js';
|
|
6
|
+
import { AgGridContext } from '../../../AgGrid/context.js';
|
|
7
|
+
import { useThemeGenerator, Theming, useRerender } from '@talxis/react-components';
|
|
8
|
+
|
|
9
|
+
const GlobalCheckBox = () => {
|
|
10
|
+
const grid = useGridInstance();
|
|
11
|
+
const baseTheme = useTheme();
|
|
12
|
+
const theme = useThemeGenerator(baseTheme.palette.themePrimary, baseTheme.semanticColors.bodyBackground, Theming.GetTextColorForBackground(baseTheme.semanticColors.bodyBackground),
|
|
13
|
+
//@ts-ignore - typings
|
|
14
|
+
grid.pcfContext.fluentDesignLanguage?.v8FluentOverrides);
|
|
15
|
+
const styles = getGlobalCheckboxStyles(theme);
|
|
16
|
+
const selection = grid.selection;
|
|
17
|
+
const agGrid = useContext(AgGridContext);
|
|
18
|
+
const rerender = useRerender();
|
|
19
|
+
const getCheckBoxState = () => {
|
|
20
|
+
if (grid.selection.allRecordsSelected) {
|
|
21
|
+
return 'checked';
|
|
22
|
+
}
|
|
23
|
+
if (grid.dataset.getSelectedRecordIds().length > 0) {
|
|
24
|
+
return 'intermediate';
|
|
25
|
+
}
|
|
26
|
+
return 'unchecked';
|
|
27
|
+
};
|
|
28
|
+
const onChange = (checked) => {
|
|
29
|
+
if (checked) {
|
|
30
|
+
selection.selectAll();
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
selection.clear();
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
const checkboxState = getCheckBoxState();
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
agGrid.setGlobalCheckBoxRenderer(() => rerender());
|
|
39
|
+
}, []);
|
|
40
|
+
if (grid.dataset.sortedRecordIds.length === 0) {
|
|
41
|
+
return jsx(Fragment, {});
|
|
42
|
+
}
|
|
43
|
+
return (jsx(ThemeProvider, { theme: theme, className: styles.root, children: selection.type === 'multiple' &&
|
|
44
|
+
jsx(Checkbox, { checked: checkboxState === 'checked', styles: {
|
|
45
|
+
checkbox: styles.checkbox
|
|
46
|
+
}, indeterminate: checkboxState === 'intermediate', onChange: (e, checked) => onChange(checked) }) }));
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export { GlobalCheckBox };
|
|
50
|
+
//# sourceMappingURL=GlobalCheckbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobalCheckbox.js","sources":["../../../../../../../../src/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.tsx"],"sourcesContent":["import { Checkbox, ThemeProvider, useTheme } from \"@fluentui/react\";\nimport { useContext, useEffect } from \"react\";\nimport { useGridInstance } from \"../../../../hooks/useGridInstance\";\nimport { getGlobalCheckboxStyles } from \"./styles\";\nimport { AgGridContext } from \"../../../AgGrid/context\";\nimport { Theming, useRerender, useThemeGenerator } from \"@talxis/react-components\";\n\n\nexport const GlobalCheckBox = () => {\n const grid = useGridInstance();\n const baseTheme = useTheme();\n const theme = useThemeGenerator(\n baseTheme.palette.themePrimary,\n baseTheme.semanticColors.bodyBackground,\n Theming.GetTextColorForBackground(baseTheme.semanticColors.bodyBackground),\n //@ts-ignore - typings\n grid.pcfContext.fluentDesignLanguage?.v8FluentOverrides\n )\n const styles = getGlobalCheckboxStyles(theme);\n const selection = grid.selection;\n const agGrid = useContext(AgGridContext);\n const rerender = useRerender();\n\n const getCheckBoxState = () => {\n if (grid.selection.allRecordsSelected) {\n return 'checked';\n }\n if (grid.dataset.getSelectedRecordIds().length > 0) {\n return 'intermediate';\n }\n return 'unchecked';\n }\n\n const onChange = (checked?: boolean) => {\n if (checked) {\n selection.selectAll();\n }\n else {\n selection.clear();\n }\n }\n\n const checkboxState = getCheckBoxState();\n\n useEffect(() => {\n agGrid.setGlobalCheckBoxRenderer(() => rerender())\n }, []);\n\n if (grid.dataset.sortedRecordIds.length === 0) {\n return <></>\n }\n return (\n <ThemeProvider theme={theme} className={styles.root}>\n {selection.type === 'multiple' &&\n <Checkbox\n checked={checkboxState === 'checked'}\n styles={{\n checkbox: styles.checkbox\n }}\n indeterminate={checkboxState === 'intermediate'}\n onChange={(e, checked) => onChange(checked)} />\n }\n </ThemeProvider>\n )\n};"],"names":["_jsx"],"mappings":";;;;;;;;AAQO,MAAM,cAAc,GAAG,MAAK;AAC/B,IAAA,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;AAC/B,IAAA,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,iBAAiB,CAC3B,SAAS,CAAC,OAAO,CAAC,YAAY,EAC9B,SAAS,CAAC,cAAc,CAAC,cAAc,EACvC,OAAO,CAAC,yBAAyB,CAAC,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC;;AAE1E,IAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,iBAAiB,CAC1D,CAAA;AACD,IAAA,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;AAC9C,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;AACjC,IAAA,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;AACzC,IAAA,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,gBAAgB,GAAG,MAAK;AAC1B,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE;AACnC,YAAA,OAAO,SAAS,CAAC;AACpB,SAAA;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;AAChD,YAAA,OAAO,cAAc,CAAC;AACzB,SAAA;AACD,QAAA,OAAO,WAAW,CAAC;AACvB,KAAC,CAAA;AAED,IAAA,MAAM,QAAQ,GAAG,CAAC,OAAiB,KAAI;AACnC,QAAA,IAAI,OAAO,EAAE;YACT,SAAS,CAAC,SAAS,EAAE,CAAC;AACzB,SAAA;AACI,aAAA;YACD,SAAS,CAAC,KAAK,EAAE,CAAC;AACrB,SAAA;AACL,KAAC,CAAA;AAED,IAAA,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,SAAS,CAAC,MAAK;QACX,MAAM,CAAC,yBAAyB,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAA;KACrD,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;AAC3C,QAAA,OAAOA,iBAAK,CAAA;AACf,KAAA;AACD,IAAA,QACIA,GAAC,CAAA,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAA,QAAA,EAC9C,SAAS,CAAC,IAAI,KAAK,UAAU;YAC1BA,GAAC,CAAA,QAAQ,IACL,OAAO,EAAE,aAAa,KAAK,SAAS,EACpC,MAAM,EAAE;oBACJ,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC5B,EACD,aAAa,EAAE,aAAa,KAAK,cAAc,EAC/C,QAAQ,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,QAAQ,CAAC,OAAO,CAAC,EAAA,CAAI,EAE3C,CAAA,EACnB;AACL;;;;"}
|
package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ITheme } from "@fluentui/react";
|
|
2
|
+
export declare const getGlobalCheckboxStyles: (theme: ITheme) => import("@fluentui/react").IProcessedStyleSet<{
|
|
3
|
+
root: {
|
|
4
|
+
backgroundColor: string;
|
|
5
|
+
flexGrow: number;
|
|
6
|
+
display: string;
|
|
7
|
+
justifyContent: string;
|
|
8
|
+
height: string;
|
|
9
|
+
alignItems: string;
|
|
10
|
+
};
|
|
11
|
+
checkbox: {
|
|
12
|
+
marginRight: number;
|
|
13
|
+
};
|
|
14
|
+
}>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { mergeStyleSets } from '@fluentui/react';
|
|
2
|
+
|
|
3
|
+
const getGlobalCheckboxStyles = (theme) => {
|
|
4
|
+
return mergeStyleSets({
|
|
5
|
+
root: {
|
|
6
|
+
backgroundColor: theme.semanticColors.bodyBackground,
|
|
7
|
+
flexGrow: 1,
|
|
8
|
+
display: 'flex',
|
|
9
|
+
justifyContent: 'center',
|
|
10
|
+
height: '100%',
|
|
11
|
+
alignItems: 'center'
|
|
12
|
+
},
|
|
13
|
+
checkbox: {
|
|
14
|
+
marginRight: 0.5
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { getGlobalCheckboxStyles };
|
|
20
|
+
//# sourceMappingURL=styles.js.map
|
package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../../../../../src/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\"\n\nexport const getGlobalCheckboxStyles = (theme: ITheme) => {\n return mergeStyleSets({\n root: {\n backgroundColor: theme.semanticColors.bodyBackground,\n flexGrow: 1,\n display: 'flex',\n justifyContent: 'center',\n height: '100%',\n alignItems: 'center'\n },\n checkbox: {\n marginRight: 0.5\n }\n });\n}"],"names":[],"mappings":";;AAEa,MAAA,uBAAuB,GAAG,CAAC,KAAa,KAAI;AACrD,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,IAAI,EAAE;AACF,YAAA,eAAe,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc;AACpD,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,cAAc,EAAE,QAAQ;AACxB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,UAAU,EAAE,QAAQ;AACvB,SAAA;AACD,QAAA,QAAQ,EAAE;AACN,YAAA,WAAW,EAAE,GAAG;AACnB,SAAA;AACJ,KAAA,CAAC,CAAC;AACP;;;;"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ITheme } from "@fluentui/react";
|
|
2
|
+
import { IColumn } from "@talxis/client-libraries";
|
|
3
|
+
export declare const getColumnHeaderStyles: (theme: ITheme, columnAlignment: Required<IColumn['alignment']>) => import("@fluentui/react").IProcessedStyleSet<{
|
|
4
|
+
root: {
|
|
5
|
+
width: string;
|
|
6
|
+
textAlign: string;
|
|
7
|
+
height: number;
|
|
8
|
+
paddingLeft: number;
|
|
9
|
+
paddingRight: number;
|
|
10
|
+
justifyContent: string;
|
|
11
|
+
'.ms-Button-flexContainer': {
|
|
12
|
+
justifyContent: string;
|
|
13
|
+
width: string;
|
|
14
|
+
gap: number;
|
|
15
|
+
pointerEvents: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
labelWrapper: {
|
|
19
|
+
flex: number;
|
|
20
|
+
display: string;
|
|
21
|
+
minWidth: number;
|
|
22
|
+
justifyContent: string | undefined;
|
|
23
|
+
};
|
|
24
|
+
label: {
|
|
25
|
+
overflow: string;
|
|
26
|
+
textOverflow: string;
|
|
27
|
+
cursor: string;
|
|
28
|
+
};
|
|
29
|
+
requiredSymbol: {
|
|
30
|
+
color: string;
|
|
31
|
+
position: string;
|
|
32
|
+
top: number;
|
|
33
|
+
left: number;
|
|
34
|
+
};
|
|
35
|
+
filterSortIcons: {
|
|
36
|
+
display: string;
|
|
37
|
+
gap: number;
|
|
38
|
+
};
|
|
39
|
+
editIcon: {
|
|
40
|
+
marginRight: number;
|
|
41
|
+
};
|
|
42
|
+
}>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { mergeStyleSets } from '@fluentui/react';
|
|
2
|
+
import { getJustifyContent } from '../Cell/styles.js';
|
|
3
|
+
|
|
4
|
+
const getColumnHeaderStyles = (theme, columnAlignment) => {
|
|
5
|
+
return mergeStyleSets({
|
|
6
|
+
root: {
|
|
7
|
+
width: '100%',
|
|
8
|
+
textAlign: 'left',
|
|
9
|
+
height: 42,
|
|
10
|
+
paddingLeft: 10,
|
|
11
|
+
paddingRight: 10,
|
|
12
|
+
justifyContent: 'flex-start',
|
|
13
|
+
'.ms-Button-flexContainer': {
|
|
14
|
+
justifyContent: 'flex-start',
|
|
15
|
+
width: '100%',
|
|
16
|
+
gap: 2,
|
|
17
|
+
pointerEvents: 'none'
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
labelWrapper: {
|
|
21
|
+
flex: 1,
|
|
22
|
+
display: 'flex',
|
|
23
|
+
minWidth: 0,
|
|
24
|
+
justifyContent: getJustifyContent(columnAlignment)
|
|
25
|
+
},
|
|
26
|
+
label: {
|
|
27
|
+
overflow: 'hidden',
|
|
28
|
+
textOverflow: 'ellipsis',
|
|
29
|
+
cursor: 'pointer',
|
|
30
|
+
},
|
|
31
|
+
requiredSymbol: {
|
|
32
|
+
color: theme.semanticColors.errorIcon,
|
|
33
|
+
position: 'relative',
|
|
34
|
+
top: 4,
|
|
35
|
+
left: 2
|
|
36
|
+
},
|
|
37
|
+
filterSortIcons: {
|
|
38
|
+
display: 'flex',
|
|
39
|
+
gap: 2
|
|
40
|
+
},
|
|
41
|
+
editIcon: {
|
|
42
|
+
marginRight: 3
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export { getColumnHeaderStyles };
|
|
48
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../../../src/components/Grid/core/components/ColumnHeader/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\";\nimport { IColumn } from \"@talxis/client-libraries\";\nimport { getJustifyContent } from \"../Cell/styles\";\n\nexport const getColumnHeaderStyles = (theme: ITheme, columnAlignment: Required<IColumn['alignment']>) => {\n return mergeStyleSets({\n root: {\n width: '100%',\n textAlign: 'left',\n height: 42,\n paddingLeft: 10,\n paddingRight: 10,\n justifyContent: 'flex-start',\n '.ms-Button-flexContainer': {\n justifyContent: 'flex-start',\n width: '100%',\n gap: 2,\n pointerEvents: 'none'\n }\n },\n labelWrapper: {\n flex: 1,\n display: 'flex',\n minWidth: 0,\n justifyContent: getJustifyContent(columnAlignment)\n },\n label: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n cursor: 'pointer',\n },\n requiredSymbol: {\n color: theme.semanticColors.errorIcon,\n position: 'relative',\n top: 4,\n left: 2\n },\n filterSortIcons: {\n display: 'flex',\n gap: 2\n },\n editIcon: {\n marginRight: 3\n }\n })\n}"],"names":[],"mappings":";;;MAIa,qBAAqB,GAAG,CAAC,KAAa,EAAE,eAA+C,KAAI;AACpG,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,IAAI,EAAE;AACF,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,WAAW,EAAE,EAAE;AACf,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,cAAc,EAAE,YAAY;AAC5B,YAAA,0BAA0B,EAAE;AACxB,gBAAA,cAAc,EAAE,YAAY;AAC5B,gBAAA,KAAK,EAAE,MAAM;AACb,gBAAA,GAAG,EAAE,CAAC;AACN,gBAAA,aAAa,EAAE,MAAM;AACxB,aAAA;AACJ,SAAA;AACD,QAAA,YAAY,EAAE;AACV,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,cAAc,EAAE,iBAAiB,CAAC,eAAe,CAAC;AACrD,SAAA;AACD,QAAA,KAAK,EAAE;AACH,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,UAAU;AACxB,YAAA,MAAM,EAAE,SAAS;AACpB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;AACrC,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,IAAI,EAAE,CAAC;AACV,SAAA;AACD,QAAA,eAAe,EAAE;AACb,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,GAAG,EAAE,CAAC;AACT,SAAA;AACD,QAAA,QAAQ,EAAE;AACN,YAAA,WAAW,EAAE,CAAC;AACjB,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
|