@axinom/mosaic-ui 0.65.0-rc.9 → 0.66.0-rc.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axinom/mosaic-ui",
3
- "version": "0.65.0-rc.9",
3
+ "version": "0.66.0-rc.0",
4
4
  "description": "UI components for building Axinom Mosaic applications",
5
5
  "author": "Axinom",
6
6
  "license": "PROPRIETARY",
@@ -112,5 +112,5 @@
112
112
  "publishConfig": {
113
113
  "access": "public"
114
114
  },
115
- "gitHead": "4574703f2871cb4fc2bef6791ed9bd65fdda66b7"
115
+ "gitHead": "33d1874b89d5afbcab34421ddef28e2ee6838d00"
116
116
  }
@@ -19,6 +19,7 @@ import { BulkEditFormFieldsConfigConverter } from './FormFieldsConfigConverter';
19
19
  export interface useBulkEditProps<T extends Data> {
20
20
  bulkEditRegistration?: BulkEditRegistration<T>;
21
21
  getBulkActionSelection: () => ItemSelection<T>;
22
+ collapseFilters: () => void;
22
23
  }
23
24
 
24
25
  export interface useBulkEditReturnType<T extends Data> {
@@ -32,6 +33,7 @@ export interface useBulkEditReturnType<T extends Data> {
32
33
  export const useBulkEdit = <T extends Data>({
33
34
  bulkEditRegistration,
34
35
  getBulkActionSelection,
36
+ collapseFilters,
35
37
  }: useBulkEditProps<T>): useBulkEditReturnType<T> => {
36
38
  const [isBulkEditMode, setIsBulkEditMode] = useState<boolean>(false);
37
39
  const [noItemsSelected, setNoItemsSelected] = useState<boolean>(false);
@@ -75,11 +77,15 @@ export const useBulkEdit = <T extends Data>({
75
77
  ? {
76
78
  label: bulkEditRegistration.label ?? 'Edit',
77
79
  icon: bulkEditRegistration.icon ?? IconName.BulkEdit,
78
- tag: 'BETA',
79
- onClick: () => setIsBulkEditMode((prev) => !prev),
80
+ onClick: () => {
81
+ setIsBulkEditMode((prev) => !prev);
82
+ if (!isBulkEditMode) {
83
+ collapseFilters();
84
+ }
85
+ },
80
86
  }
81
87
  : undefined,
82
- [bulkEditRegistration],
88
+ [bulkEditRegistration, collapseFilters, isBulkEditMode],
83
89
  );
84
90
 
85
91
  const handleSave = useCallback(
@@ -368,6 +368,7 @@ export const Explorer = React.forwardRef(function Explorer<T extends Data>(
368
368
  } = useBulkEdit({
369
369
  bulkEditRegistration,
370
370
  getBulkActionSelection,
371
+ collapseFilters,
371
372
  });
372
373
 
373
374
  const { resultsTitle } = useSubtitle<T>(
@@ -126,8 +126,8 @@ export const useQuickEdit = <T extends Data>({
126
126
  }
127
127
  setIsQuickEditMode(isOpen);
128
128
  setCurrentRegistration(isOpen ? registrations[0] : undefined);
129
- collapseFilters();
130
129
  if (isOpen) {
130
+ collapseFilters();
131
131
  listRef.current?.selectIndex(0);
132
132
  }
133
133
  }
@@ -5,6 +5,7 @@ export enum IconName {
5
5
  Archive,
6
6
  Audio,
7
7
  DescriptiveAudio,
8
+ ThumbnailsIcon,
8
9
  BackwardOne,
9
10
  BackwardTen,
10
11
  Block,
@@ -77,6 +77,22 @@ const DescriptiveAudioIcon: React.FC<{ className?: string }> = ({
77
77
  </svg>
78
78
  );
79
79
 
80
+ const ThumbnailsIcon: React.FC<{ className?: string }> = ({ className }) => (
81
+ <svg
82
+ className={clsx(classes.icons, className)}
83
+ version="1.1"
84
+ xmlns="http://www.w3.org/2000/svg"
85
+ viewBox="0 0 40 40"
86
+ >
87
+ <path
88
+ vectorEffect="non-scaling-stroke"
89
+ fill="none"
90
+ strokeWidth="2"
91
+ d="M38,20c0,9.9-8.1,18-18,18S2,29.9,2,20,10.1,2,20,2s18,8.1,18,18ZM14.3,12c0,1.6,1.2,2.7,2.7,2.7s2.7-1.1,2.7-2.7-1.2-2.7-2.7-2.7-2.7,1.1-2.7,2.7ZM37.5,24l-8.1-8.1-11.4,11.4-6.6-6.6-7.4,7.4"
92
+ />
93
+ </svg>
94
+ );
95
+
80
96
  const BackwardOne: React.FC<{ className?: string }> = ({ className }) => (
81
97
  <svg
82
98
  className={clsx(classes.icons, className)}
@@ -944,6 +960,7 @@ export const Icons: React.FC<IconsProps> = ({ icon, className }) => {
944
960
  [IconName.Archive]: <ArchiveIcon className={className} />,
945
961
  [IconName.Audio]: <AudioIcon className={className} />,
946
962
  [IconName.DescriptiveAudio]: <DescriptiveAudioIcon className={className} />,
963
+ [IconName.ThumbnailsIcon]: <ThumbnailsIcon className={className} />,
947
964
  [IconName.BackwardOne]: <BackwardOne className={className} />,
948
965
  [IconName.BackwardTen]: <BackwardTen className={className} />,
949
966
  [IconName.Block]: <BlockIcon className={className} />,