@axinom/mosaic-ui 0.35.0-rc.0 → 0.35.0-rc.10

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.
Files changed (73) hide show
  1. package/dist/components/DynamicDataList/DynamicDataList.d.ts +5 -14
  2. package/dist/components/DynamicDataList/DynamicDataList.d.ts.map +1 -1
  3. package/dist/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.d.ts +3 -1
  4. package/dist/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.d.ts.map +1 -1
  5. package/dist/components/DynamicDataList/DynamicListHeader/DynamicListHeader.d.ts +5 -1
  6. package/dist/components/DynamicDataList/DynamicListHeader/DynamicListHeader.d.ts.map +1 -1
  7. package/dist/components/DynamicDataList/DynamicListRow/DynamicListRow.d.ts +9 -10
  8. package/dist/components/DynamicDataList/DynamicListRow/DynamicListRow.d.ts.map +1 -1
  9. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.d.ts +5 -0
  10. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.d.ts.map +1 -0
  11. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.d.ts +4 -0
  12. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.d.ts.map +1 -0
  13. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.init.d.ts +4 -0
  14. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.init.d.ts.map +1 -0
  15. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.types.d.ts +38 -0
  16. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.types.d.ts.map +1 -0
  17. package/dist/components/DynamicDataList/helpers/DynamicListReducer/index.d.ts +4 -0
  18. package/dist/components/DynamicDataList/helpers/DynamicListReducer/index.d.ts.map +1 -0
  19. package/dist/components/DynamicDataList/helpers/generateId.d.ts +6 -0
  20. package/dist/components/DynamicDataList/helpers/generateId.d.ts.map +1 -0
  21. package/dist/components/DynamicDataList/helpers/useColumnDefs.d.ts +14 -0
  22. package/dist/components/DynamicDataList/helpers/useColumnDefs.d.ts.map +1 -0
  23. package/dist/components/DynamicDataList/helpers/useDataHandler.d.ts +9 -0
  24. package/dist/components/DynamicDataList/helpers/useDataHandler.d.ts.map +1 -0
  25. package/dist/components/DynamicDataList/helpers/useRowAnimation.d.ts +12 -0
  26. package/dist/components/DynamicDataList/helpers/useRowAnimation.d.ts.map +1 -0
  27. package/dist/components/DynamicDataList/index.d.ts +1 -1
  28. package/dist/components/DynamicDataList/index.d.ts.map +1 -1
  29. package/dist/components/List/ListRow/ListRow.d.ts.map +1 -1
  30. package/dist/components/List/useColumnsSize.d.ts +1 -0
  31. package/dist/components/List/useColumnsSize.d.ts.map +1 -1
  32. package/dist/index.es.js +11 -3
  33. package/dist/index.es.js.map +1 -1
  34. package/dist/index.js +11 -3
  35. package/dist/index.js.map +1 -1
  36. package/package.json +5 -3
  37. package/src/components/DynamicDataList/DynamicDataList.scss +0 -61
  38. package/src/components/DynamicDataList/DynamicDataList.spec.tsx +126 -393
  39. package/src/components/DynamicDataList/DynamicDataList.stories.tsx +0 -5
  40. package/src/components/DynamicDataList/DynamicDataList.tsx +133 -600
  41. package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.scss +4 -2
  42. package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.spec.tsx +17 -44
  43. package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.tsx +15 -22
  44. package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.scss +15 -10
  45. package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.spec.tsx +4 -1
  46. package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.tsx +16 -14
  47. package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.scss +16 -24
  48. package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.spec.tsx +26 -253
  49. package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.tsx +45 -139
  50. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.spec.ts +276 -0
  51. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.ts +86 -0
  52. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.init.spec.ts +118 -0
  53. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.init.ts +40 -0
  54. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.spec.ts +89 -0
  55. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.ts +42 -0
  56. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.types.ts +46 -0
  57. package/src/components/DynamicDataList/helpers/DynamicListReducer/index.ts +3 -0
  58. package/src/components/DynamicDataList/helpers/generateId.ts +10 -0
  59. package/src/components/DynamicDataList/helpers/useColumnDefs.ts +56 -0
  60. package/src/components/DynamicDataList/helpers/useDataHandler.ts +77 -0
  61. package/src/components/DynamicDataList/helpers/useRowAnimation.tsx +38 -0
  62. package/src/components/DynamicDataList/index.ts +2 -2
  63. package/src/components/FormElements/BooleanView/BooleanViewField.scss +2 -2
  64. package/src/components/FormStation/FormStation.scss +4 -0
  65. package/src/components/FormStation/FormStation.tsx +2 -2
  66. package/src/components/List/List.tsx +1 -1
  67. package/src/components/List/ListRow/ListRow.tsx +56 -50
  68. package/src/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.scss +6 -9
  69. package/src/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.spec.tsx +2 -2
  70. package/src/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.tsx +1 -1
  71. package/src/components/List/useColumnsSize.ts +20 -3
  72. package/src/styles/variables.scss +0 -5
  73. package/src/components/DynamicDataList/DynamicDataList.reposition.spec.tsx +0 -816
@@ -249,58 +249,64 @@ export const ListRow = <T extends Data>({
249
249
  {generateCells}
250
250
  </div>
251
251
  )}
252
- <div className={classes.actions}>
253
- {inlineMenuActions &&
254
- inlineActionMenuData &&
255
- inlineActionMenuData.length > 0 && (
256
- <InlineMenu
257
- actions={inlineActionMenuData}
258
- showArrow={false}
259
- placement="bottom-end"
260
- />
252
+ {(inlineMenuActions ||
253
+ showActionButton ||
254
+ showCheckMark ||
255
+ showItemCheckbox) && (
256
+ <div className={classes.actions}>
257
+ {inlineMenuActions &&
258
+ inlineActionMenuData &&
259
+ inlineActionMenuData.length > 0 && (
260
+ <InlineMenu
261
+ actions={inlineActionMenuData}
262
+ showArrow={false}
263
+ placement="bottom-end"
264
+ />
265
+ )}
266
+ {showActionButton && selectionMode === ListSelectMode.None && (
267
+ <>
268
+ {showActionButton &&
269
+ (typeof onItemClicked !== 'function' ? (
270
+ <Button
271
+ icon={IconName.ChevronRight}
272
+ height={actionSize}
273
+ width={actionSize}
274
+ path={onItemClicked}
275
+ dataTestId="list-entry-action"
276
+ />
277
+ ) : (
278
+ <Button
279
+ icon={IconName.ChevronRight}
280
+ height={actionSize}
281
+ width={actionSize}
282
+ onButtonClicked={() => onItemClickedHandler(data)}
283
+ dataTestId="list-entry-action"
284
+ />
285
+ ))}
286
+ </>
261
287
  )}
262
- {showActionButton && selectionMode === ListSelectMode.None && (
263
- <>
264
- {showActionButton &&
265
- (typeof onItemClicked !== 'function' ? (
266
- <Button
267
- icon={IconName.ChevronRight}
268
- height={actionSize}
269
- width={actionSize}
270
- path={onItemClicked}
271
- dataTestId="list-entry-action"
272
- />
273
- ) : (
274
- <Button
275
- icon={IconName.ChevronRight}
276
- height={actionSize}
277
- width={actionSize}
278
- dataTestId="list-entry-action"
279
- />
280
- ))}
281
- </>
282
- )}
283
288
 
284
- {showCheckMark && (
285
- <Button
286
- icon={IconName.Checkmark}
287
- height={actionSize}
288
- width={actionSize}
289
- dataTestId="list-entry-select-button"
290
- className={classes.selectionCheckMark}
291
- onButtonClicked={() => onItemClickedHandler(data)}
292
- />
293
- )}
294
- {showItemCheckbox && (
295
- <ListCheckBox
296
- height={actionSize}
297
- width={actionSize}
298
- onCheckBoxToggled={() => onItemClickedHandler(data)}
299
- isChecked={itemSelected}
300
- isDisabled={isRowDisabled}
301
- />
302
- )}
303
- </div>
289
+ {showCheckMark && (
290
+ <Button
291
+ icon={IconName.Checkmark}
292
+ height={actionSize}
293
+ width={actionSize}
294
+ dataTestId="list-entry-select-button"
295
+ className={classes.selectionCheckMark}
296
+ onButtonClicked={() => onItemClickedHandler(data)}
297
+ />
298
+ )}
299
+ {showItemCheckbox && (
300
+ <ListCheckBox
301
+ height={actionSize}
302
+ width={actionSize}
303
+ onCheckBoxToggled={() => onItemClickedHandler(data)}
304
+ isChecked={itemSelected}
305
+ isDisabled={isRowDisabled}
306
+ />
307
+ )}
308
+ </div>
309
+ )}
304
310
  </div>
305
311
  );
306
312
 
@@ -1,17 +1,14 @@
1
1
  @import '../../../../../styles/common.scss';
2
2
 
3
3
  .circle {
4
- height: var(--boolean-dot-size, $boolean-dot-size);
5
- width: var(--boolean-dot-size, $boolean-dot-size);
6
- min-width: var(--boolean-dot-size, $boolean-dot-size);
7
- min-height: var(--boolean-dot-size, $boolean-dot-size);
8
- border-radius: 100%;
4
+ height: 20px;
5
+ width: 20px;
9
6
 
10
- &.green {
11
- background-color: var(--boolean-dot-true-color, $boolean-dot-true-color);
7
+ &.true {
8
+ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath vector-effect='non-scaling-stroke' fill='none' stroke='%23707070' stroke-width='2' d='M20,2c9.9,0,18,8.1,18,18s-8.1,18-18,18S2,29.9,2,20S10.1,2,20,2z M29,13.5 L17.8,26.3L11,19.1'/%3E%3C/svg%3E%0A");
12
9
  }
13
10
 
14
- &.red {
15
- background-color: var(--boolean-dot-false-color, $boolean-dot-false-color);
11
+ &.false {
12
+ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath vector-effect='non-scaling-stroke' fill='none' stroke='%23B7B7B7' stroke-width='2' d='M20,2c9.9,0,18,8.1,18,18s-8.1,18-18,18S2,29.9,2,20S10.1,2,20,2z M11,20h18'/%3E%3C/svg%3E");
16
13
  }
17
14
  }
@@ -29,13 +29,13 @@ describe('BooleanDotRenderer', () => {
29
29
  const wrapper = shallow(
30
30
  <RendererWrapper {...defaultProps} value={false} />,
31
31
  );
32
- const dot = wrapper.find('.red');
32
+ const dot = wrapper.find('.false');
33
33
  expect(dot).toHaveLength(1);
34
34
  });
35
35
 
36
36
  it('renders the green dot when true is passed', () => {
37
37
  const wrapper = shallow(<RendererWrapper {...defaultProps} value={true} />);
38
- const dot = wrapper.find('.green');
38
+ const dot = wrapper.find('.true');
39
39
  expect(dot).toHaveLength(1);
40
40
  });
41
41
  });
@@ -17,6 +17,6 @@ import classes from './BooleanDotRenderer.scss';
17
17
  */
18
18
  export const BooleanDotRenderer = (val: unknown): JSX.Element => (
19
19
  <div
20
- className={clsx(classes.circle, val ? [classes.green] : [classes.red])}
20
+ className={clsx(classes.circle, val ? [classes.true] : [classes.false])}
21
21
  ></div>
22
22
  );
@@ -1,4 +1,4 @@
1
- import { useEffect, useState } from 'react';
1
+ import { SetStateAction, useEffect, useState } from 'react';
2
2
  import { Data } from '../../types';
3
3
  import { Column, ListSelectMode } from './List.model';
4
4
 
@@ -73,6 +73,8 @@ export const useColumnsSize = <T extends Data>(
73
73
  setColumnSizes: React.Dispatch<React.SetStateAction<string>>;
74
74
  hasActionColumn: boolean;
75
75
  } => {
76
+ const [isResized, setIsResized] = useState<boolean>(false);
77
+
76
78
  const [orgColumnSizes, setOrgColumnSizes] = useState<string>(
77
79
  getColumnsSizeDefinition(
78
80
  columns,
@@ -81,6 +83,7 @@ export const useColumnsSize = <T extends Data>(
81
83
  showInlineMenu,
82
84
  ),
83
85
  );
86
+
84
87
  const [columnSizes, setColumnSizes] = useState<string>(orgColumnSizes);
85
88
 
86
89
  useEffect(() => {
@@ -92,16 +95,30 @@ export const useColumnsSize = <T extends Data>(
92
95
  showInlineMenu,
93
96
  ),
94
97
  );
95
- }, [columns, selectMode, showActionButton, showInlineMenu]);
98
+ if (!isResized) {
99
+ setColumnSizes(orgColumnSizes);
100
+ }
101
+ }, [
102
+ columns,
103
+ isResized,
104
+ orgColumnSizes,
105
+ selectMode,
106
+ showActionButton,
107
+ showInlineMenu,
108
+ ]);
96
109
 
97
110
  const resetColumnSizes = (): void => {
98
111
  setColumnSizes(orgColumnSizes);
112
+ setIsResized(false);
99
113
  };
100
114
 
101
115
  return {
102
116
  columnSizes,
103
117
  resetColumnSizes,
104
- setColumnSizes,
118
+ setColumnSizes: (newColumnSizes: SetStateAction<string>) => {
119
+ setIsResized(true);
120
+ setColumnSizes(newColumnSizes);
121
+ },
105
122
  hasActionColumn: hasActionColumn(
106
123
  selectMode,
107
124
  showActionButton,
@@ -248,11 +248,6 @@ $actions-border-color: white;
248
248
  $background: #ccc;
249
249
  $fallback-image-bg-color: #efefef;
250
250
 
251
- /* ListRow Renderers */
252
- $boolean-dot-true-color: $green;
253
- $boolean-dot-false-color: $red;
254
- $boolean-dot-size: 20px;
255
-
256
251
  /* Modal */
257
252
  $modal-back-drop-color: rgba(169, 169, 169, 0.75);
258
253
  $modal-back-drop-color-hidden: rgba(169, 169, 169, 0);