@linzjs/step-ag-grid 23.0.0 → 24.0.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.
Files changed (274) hide show
  1. package/dist/src/components/ComponentLoadingWrapper.d.ts +1 -1
  2. package/dist/src/components/Grid.d.ts +17 -17
  3. package/dist/src/components/GridCell.d.ts +9 -9
  4. package/dist/src/components/GridCellFiller.d.ts +2 -2
  5. package/dist/src/components/GridCellMultiEditor.d.ts +6 -6
  6. package/dist/src/components/GridCellMultiSelectClassRules.d.ts +1 -1
  7. package/dist/src/components/GridIcon.d.ts +2 -2
  8. package/dist/src/components/GridNoRowsOverlay.d.ts +1 -1
  9. package/dist/src/components/GridPopoverHook.d.ts +2 -2
  10. package/dist/src/components/GridWrapper.d.ts +1 -1
  11. package/dist/src/components/PostSortRowsHook.d.ts +1 -1
  12. package/dist/src/components/clickInputWhenContainingCellClicked.d.ts +1 -1
  13. package/dist/src/components/gridFilter/GridFilterButtons.d.ts +5 -5
  14. package/dist/src/components/gridFilter/GridFilterColumnsToggle.d.ts +1 -1
  15. package/dist/src/components/gridFilter/GridFilterDownloadCsvButton.d.ts +1 -1
  16. package/dist/src/components/gridFilter/GridFilterHeaderIconButton.d.ts +2 -2
  17. package/dist/src/components/gridFilter/GridFilters.d.ts +1 -1
  18. package/dist/src/components/gridFilter/index.d.ts +7 -7
  19. package/dist/src/components/gridFilter/useGridFilter.d.ts +2 -2
  20. package/dist/src/components/gridForm/GridFormDropDown.d.ts +8 -8
  21. package/dist/src/components/gridForm/GridFormEditBearing.d.ts +2 -2
  22. package/dist/src/components/gridForm/GridFormMessage.d.ts +3 -3
  23. package/dist/src/components/gridForm/GridFormMultiSelect.d.ts +4 -4
  24. package/dist/src/components/gridForm/GridFormMultiSelectGrid.d.ts +4 -4
  25. package/dist/src/components/gridForm/GridFormPopoverMenu.d.ts +5 -5
  26. package/dist/src/components/gridForm/GridFormSubComponentTextArea.d.ts +4 -4
  27. package/dist/src/components/gridForm/GridFormSubComponentTextInput.d.ts +4 -4
  28. package/dist/src/components/gridForm/GridFormTextArea.d.ts +4 -4
  29. package/dist/src/components/gridForm/GridFormTextInput.d.ts +3 -3
  30. package/dist/src/components/gridForm/index.d.ts +10 -10
  31. package/dist/src/components/gridHeader/GridHeaderSelect.d.ts +1 -1
  32. package/dist/src/components/gridHeader/index.d.ts +1 -1
  33. package/dist/src/components/gridHook/index.d.ts +1 -1
  34. package/dist/src/components/gridHook/useGridContextMenu.d.ts +4 -4
  35. package/dist/src/components/gridPopoverEdit/GridButton.d.ts +5 -5
  36. package/dist/src/components/gridPopoverEdit/GridEditBoolean.d.ts +4 -4
  37. package/dist/src/components/gridPopoverEdit/GridPopoutEditMultiSelect.d.ts +4 -4
  38. package/dist/src/components/gridPopoverEdit/GridPopoutEditMultiSelectGrid.d.ts +4 -4
  39. package/dist/src/components/gridPopoverEdit/GridPopoverEditBearing.d.ts +4 -4
  40. package/dist/src/components/gridPopoverEdit/GridPopoverEditDropDown.d.ts +4 -4
  41. package/dist/src/components/gridPopoverEdit/GridPopoverMenu.d.ts +4 -4
  42. package/dist/src/components/gridPopoverEdit/GridPopoverMessage.d.ts +4 -4
  43. package/dist/src/components/gridPopoverEdit/GridPopoverTextArea.d.ts +4 -4
  44. package/dist/src/components/gridPopoverEdit/GridPopoverTextInput.d.ts +4 -4
  45. package/dist/src/components/gridPopoverEdit/index.d.ts +11 -11
  46. package/dist/src/components/gridRender/GridRenderGenericCell.d.ts +5 -5
  47. package/dist/src/components/gridRender/GridRenderPopoutMenuCell.d.ts +1 -1
  48. package/dist/src/components/gridRender/index.d.ts +2 -2
  49. package/dist/src/components/gridUtil.d.ts +1 -1
  50. package/dist/src/components/index.d.ts +19 -19
  51. package/dist/src/contexts/GridContext.d.ts +4 -4
  52. package/dist/src/contexts/GridContextProvider.d.ts +3 -3
  53. package/dist/src/contexts/GridPopoverContext.d.ts +3 -3
  54. package/dist/src/contexts/GridPopoverContextProvider.d.ts +4 -4
  55. package/dist/src/contexts/GridUpdatingContextProvider.d.ts +1 -1
  56. package/dist/src/index.d.ts +17 -17
  57. package/dist/src/lui/ActionButton.d.ts +9 -9
  58. package/dist/src/lui/FormError.d.ts +2 -2
  59. package/dist/src/lui/TextAreaInput.d.ts +1 -1
  60. package/dist/src/lui/TextInputFormatted.d.ts +2 -2
  61. package/dist/src/lui/reactUtils.d.ts +1 -1
  62. package/dist/src/lui/stateDeferredHook.d.ts +1 -1
  63. package/dist/src/react-menu3/components/ControlledMenu.d.ts +2 -2
  64. package/dist/src/react-menu3/components/FocusableItem.d.ts +3 -3
  65. package/dist/src/react-menu3/components/Menu.d.ts +3 -3
  66. package/dist/src/react-menu3/components/MenuButton.d.ts +2 -2
  67. package/dist/src/react-menu3/components/MenuDivider.d.ts +1 -1
  68. package/dist/src/react-menu3/components/MenuGroup.d.ts +2 -2
  69. package/dist/src/react-menu3/components/MenuHeader.d.ts +2 -2
  70. package/dist/src/react-menu3/components/MenuItem.d.ts +3 -3
  71. package/dist/src/react-menu3/components/MenuList.d.ts +1 -1
  72. package/dist/src/react-menu3/components/MenuRadioGroup.d.ts +2 -2
  73. package/dist/src/react-menu3/components/SubMenu.d.ts +5 -5
  74. package/dist/src/react-menu3/contexts/EventHandlersContext.d.ts +1 -1
  75. package/dist/src/react-menu3/contexts/MenuListContext.d.ts +2 -2
  76. package/dist/src/react-menu3/contexts/MenuListItemContext.d.ts +1 -1
  77. package/dist/src/react-menu3/contexts/RadioGroupContext.d.ts +1 -1
  78. package/dist/src/react-menu3/contexts/SettingsContext.d.ts +2 -2
  79. package/dist/src/react-menu3/hooks/index.d.ts +9 -9
  80. package/dist/src/react-menu3/hooks/useBEM.d.ts +1 -1
  81. package/dist/src/react-menu3/hooks/useCombinedRef.d.ts +1 -1
  82. package/dist/src/react-menu3/hooks/useIsomorphicLayoutEffect.d.ts +1 -1
  83. package/dist/src/react-menu3/hooks/useItemEffect.d.ts +1 -1
  84. package/dist/src/react-menu3/hooks/useItemState.d.ts +1 -1
  85. package/dist/src/react-menu3/hooks/useItems.d.ts +2 -2
  86. package/dist/src/react-menu3/hooks/useMenuChange.d.ts +1 -1
  87. package/dist/src/react-menu3/hooks/useMenuState.d.ts +1 -1
  88. package/dist/src/react-menu3/hooks/useMenuStateAndFocus.d.ts +1 -1
  89. package/dist/src/react-menu3/index.d.ts +11 -11
  90. package/dist/src/react-menu3/positionUtils/getPositionHelpers.d.ts +1 -1
  91. package/dist/src/react-menu3/positionUtils/index.d.ts +3 -3
  92. package/dist/src/react-menu3/positionUtils/placeArrowHorizontal.d.ts +1 -1
  93. package/dist/src/react-menu3/positionUtils/placeArrowVertical.d.ts +1 -1
  94. package/dist/src/react-menu3/positionUtils/placeLeftorRight.d.ts +4 -4
  95. package/dist/src/react-menu3/positionUtils/placeToporBottom.d.ts +5 -5
  96. package/dist/src/react-menu3/positionUtils/positionContextMenu.d.ts +2 -2
  97. package/dist/src/react-menu3/positionUtils/positionMenu.d.ts +5 -5
  98. package/dist/src/react-menu3/style-utils/index.d.ts +1 -1
  99. package/dist/src/react-menu3/types.d.ts +15 -15
  100. package/dist/src/react-menu3/utils/constants.d.ts +1 -1
  101. package/dist/src/react-menu3/utils/index.d.ts +3 -3
  102. package/dist/src/react-menu3/utils/utils.d.ts +5 -5
  103. package/dist/src/react-menu3/utils/withHovering.d.ts +1 -1
  104. package/dist/src/utils/testQuick.d.ts +2 -2
  105. package/dist/src/utils/testUtil.d.ts +2 -2
  106. package/dist/src/utils/textValidator.d.ts +2 -2
  107. package/dist/step-ag-grid.cjs.js +966 -952
  108. package/dist/step-ag-grid.cjs.js.map +1 -1
  109. package/dist/step-ag-grid.esm.js +968 -954
  110. package/dist/step-ag-grid.esm.js.map +1 -1
  111. package/package.json +26 -41
  112. package/src/components/ComponentLoadingWrapper.tsx +5 -6
  113. package/src/components/Grid.tsx +85 -83
  114. package/src/components/GridCell.test.tsx +15 -15
  115. package/src/components/GridCell.tsx +46 -44
  116. package/src/components/GridCellFiller.tsx +5 -4
  117. package/src/components/GridCellMultiEditor.tsx +7 -7
  118. package/src/components/GridCellMultiSelectClassRules.tsx +3 -3
  119. package/src/components/GridIcon.tsx +6 -7
  120. package/src/components/GridLoadableCell.tsx +2 -2
  121. package/src/components/GridNoRowsOverlay.tsx +8 -8
  122. package/src/components/GridPopoverHook.tsx +16 -16
  123. package/src/components/GridWrapper.tsx +2 -2
  124. package/src/components/PostSortRowsHook.ts +11 -11
  125. package/src/components/clickInputWhenContainingCellClicked.tsx +5 -5
  126. package/src/components/gridFilter/GridFilterButtons.tsx +8 -9
  127. package/src/components/gridFilter/GridFilterColumnsToggle.tsx +25 -26
  128. package/src/components/gridFilter/GridFilterDownloadCsvButton.tsx +12 -13
  129. package/src/components/gridFilter/GridFilterHeaderIconButton.tsx +9 -10
  130. package/src/components/gridFilter/GridFilterQuick.tsx +6 -6
  131. package/src/components/gridFilter/GridFilters.tsx +1 -1
  132. package/src/components/gridFilter/index.ts +7 -7
  133. package/src/components/gridFilter/useGridFilter.ts +3 -3
  134. package/src/components/gridForm/GridFormDropDown.tsx +56 -52
  135. package/src/components/gridForm/GridFormEditBearing.tsx +12 -12
  136. package/src/components/gridForm/GridFormMessage.tsx +10 -10
  137. package/src/components/gridForm/GridFormMultiSelect.tsx +53 -51
  138. package/src/components/gridForm/GridFormMultiSelectGrid.tsx +25 -26
  139. package/src/components/gridForm/GridFormPopoverMenu.tsx +32 -29
  140. package/src/components/gridForm/GridFormSubComponentTextArea.tsx +10 -10
  141. package/src/components/gridForm/GridFormSubComponentTextInput.tsx +8 -8
  142. package/src/components/gridForm/GridFormTextArea.tsx +11 -11
  143. package/src/components/gridForm/GridFormTextInput.tsx +11 -11
  144. package/src/components/gridForm/index.ts +10 -10
  145. package/src/components/gridHeader/GridHeaderSelect.tsx +9 -9
  146. package/src/components/gridHeader/index.ts +1 -1
  147. package/src/components/gridHook/index.ts +1 -1
  148. package/src/components/gridHook/useGridContextMenu.tsx +7 -7
  149. package/src/components/gridPopoverEdit/GridButton.tsx +13 -12
  150. package/src/components/gridPopoverEdit/GridEditBoolean.tsx +19 -18
  151. package/src/components/gridPopoverEdit/GridPopoutEditMultiSelect.ts +7 -6
  152. package/src/components/gridPopoverEdit/GridPopoutEditMultiSelectGrid.ts +7 -6
  153. package/src/components/gridPopoverEdit/GridPopoverEditBearing.ts +9 -9
  154. package/src/components/gridPopoverEdit/GridPopoverEditDropDown.ts +8 -7
  155. package/src/components/gridPopoverEdit/GridPopoverMenu.tsx +6 -6
  156. package/src/components/gridPopoverEdit/GridPopoverMessage.ts +4 -4
  157. package/src/components/gridPopoverEdit/GridPopoverTextArea.ts +4 -4
  158. package/src/components/gridPopoverEdit/GridPopoverTextInput.ts +4 -4
  159. package/src/components/gridPopoverEdit/index.ts +11 -11
  160. package/src/components/gridRender/GridRenderGenericCell.tsx +5 -5
  161. package/src/components/gridRender/GridRenderPopoutMenuCell.tsx +8 -9
  162. package/src/components/gridRender/index.ts +2 -2
  163. package/src/components/gridUtil.ts +3 -3
  164. package/src/components/index.ts +19 -19
  165. package/src/contexts/GridContext.tsx +52 -46
  166. package/src/contexts/GridContextProvider.test.tsx +14 -14
  167. package/src/contexts/GridContextProvider.tsx +42 -41
  168. package/src/contexts/GridPopoverContext.tsx +10 -7
  169. package/src/contexts/GridPopoverContextProvider.tsx +12 -10
  170. package/src/contexts/GridSubComponentContext.ts +6 -5
  171. package/src/contexts/GridUpdatingContext.tsx +5 -4
  172. package/src/contexts/GridUpdatingContextProvider.tsx +3 -3
  173. package/src/index.ts +17 -21
  174. package/src/lui/ActionButton.tsx +42 -41
  175. package/src/lui/FormError.tsx +4 -4
  176. package/src/lui/TextAreaInput.tsx +9 -9
  177. package/src/lui/TextInputFormatted.tsx +11 -11
  178. package/src/lui/reactUtils.test.tsx +8 -8
  179. package/src/lui/reactUtils.tsx +2 -2
  180. package/src/lui/stateDeferredHook.tsx +3 -5
  181. package/src/lui/timeoutHook.test.tsx +5 -5
  182. package/src/lui/timeoutHook.tsx +1 -1
  183. package/src/react-app-env.d.ts +1 -1
  184. package/src/react-menu3/components/ControlledMenu.tsx +48 -48
  185. package/src/react-menu3/components/FocusableItem.tsx +7 -7
  186. package/src/react-menu3/components/Menu.tsx +11 -11
  187. package/src/react-menu3/components/MenuButton.tsx +4 -4
  188. package/src/react-menu3/components/MenuDivider.tsx +4 -4
  189. package/src/react-menu3/components/MenuGroup.tsx +5 -5
  190. package/src/react-menu3/components/MenuHeader.tsx +4 -4
  191. package/src/react-menu3/components/MenuItem.tsx +14 -14
  192. package/src/react-menu3/components/MenuList.tsx +55 -55
  193. package/src/react-menu3/components/MenuRadioGroup.tsx +7 -7
  194. package/src/react-menu3/components/SubMenu.tsx +24 -24
  195. package/src/react-menu3/contexts/EventHandlersContext.ts +2 -2
  196. package/src/react-menu3/contexts/HoverItemContext.ts +1 -1
  197. package/src/react-menu3/contexts/ItemSettingsContext.ts +1 -1
  198. package/src/react-menu3/contexts/MenuListContext.ts +2 -2
  199. package/src/react-menu3/contexts/MenuListItemContext.ts +2 -2
  200. package/src/react-menu3/contexts/RadioGroupContext.ts +2 -2
  201. package/src/react-menu3/contexts/SettingsContext.ts +2 -2
  202. package/src/react-menu3/hooks/index.ts +9 -9
  203. package/src/react-menu3/hooks/useBEM.ts +4 -4
  204. package/src/react-menu3/hooks/useCombinedRef.ts +2 -2
  205. package/src/react-menu3/hooks/useIsomorphicLayoutEffect.ts +4 -4
  206. package/src/react-menu3/hooks/useItemEffect.ts +3 -3
  207. package/src/react-menu3/hooks/useItemState.ts +5 -5
  208. package/src/react-menu3/hooks/useItems.ts +8 -8
  209. package/src/react-menu3/hooks/useMenuChange.ts +3 -3
  210. package/src/react-menu3/hooks/useMenuState.ts +5 -5
  211. package/src/react-menu3/hooks/useMenuStateAndFocus.ts +4 -4
  212. package/src/react-menu3/index.ts +11 -11
  213. package/src/react-menu3/positionUtils/getPositionHelpers.ts +2 -2
  214. package/src/react-menu3/positionUtils/index.ts +3 -3
  215. package/src/react-menu3/positionUtils/placeArrowHorizontal.ts +1 -1
  216. package/src/react-menu3/positionUtils/placeArrowVertical.ts +1 -1
  217. package/src/react-menu3/positionUtils/placeLeftorRight.ts +13 -13
  218. package/src/react-menu3/positionUtils/placeToporBottom.ts +15 -15
  219. package/src/react-menu3/positionUtils/positionContextMenu.ts +4 -4
  220. package/src/react-menu3/positionUtils/positionMenu.ts +14 -14
  221. package/src/react-menu3/style-utils/index.ts +24 -24
  222. package/src/react-menu3/types.ts +15 -15
  223. package/src/react-menu3/utils/constants.ts +33 -33
  224. package/src/react-menu3/utils/index.ts +3 -4
  225. package/src/react-menu3/utils/propTypes2.ts +10 -10
  226. package/src/react-menu3/utils/utils.ts +14 -14
  227. package/src/react-menu3/utils/withHovering.tsx +3 -3
  228. package/src/stories/components/ActionButton.stories.tsx +23 -24
  229. package/src/stories/grid/FormTest.tsx +15 -16
  230. package/src/stories/grid/GridDragRow.stories.tsx +33 -34
  231. package/src/stories/grid/GridFilterButtons.stories.tsx +32 -33
  232. package/src/stories/grid/GridNoRowsOverlay.stories.tsx +9 -10
  233. package/src/stories/grid/GridNonEditableRow.stories.tsx +40 -41
  234. package/src/stories/grid/GridPinnedRow.stories.tsx +25 -26
  235. package/src/stories/grid/GridPopoutContextMenu.stories.tsx +33 -32
  236. package/src/stories/grid/GridPopoutEditBoolean.stories.tsx +21 -22
  237. package/src/stories/grid/GridPopoutEditGeneric.stories.tsx +18 -19
  238. package/src/stories/grid/GridPopoutEditGenericTextArea.stories.tsx +50 -49
  239. package/src/stories/grid/GridPopoverEditBearing.stories.tsx +25 -26
  240. package/src/stories/grid/GridPopoverEditDropDown.stories.tsx +93 -94
  241. package/src/stories/grid/GridPopoverEditMultiSelect.stories.tsx +62 -63
  242. package/src/stories/grid/GridPopoverEditMultiSelectGrid.stories.tsx +28 -28
  243. package/src/stories/grid/GridReadOnly.stories.tsx +66 -67
  244. package/src/stories/grid/GridViewList.stories.tsx +37 -38
  245. package/src/stories/grid/gridFormInteraction/GridFormDropDownInteraction.stories.tsx +37 -38
  246. package/src/stories/grid/gridFormInteraction/GridFormEditBearingCorrectionInteraction.stories.tsx +25 -26
  247. package/src/stories/grid/gridFormInteraction/GridFormEditBearingInteraction.stories.tsx +25 -26
  248. package/src/stories/grid/gridFormInteraction/GridFormMultiSelectGridInteraction.stories.tsx +31 -31
  249. package/src/stories/grid/gridFormInteraction/GridFormMultiSelectInteraction.stories.tsx +47 -48
  250. package/src/stories/grid/gridFormInteraction/GridFormPopoverMenuInteraction.stories.tsx +44 -45
  251. package/src/stories/grid/gridFormInteraction/GridFormTextAreaInteraction.stories.tsx +19 -20
  252. package/src/stories/grid/gridFormInteraction/GridFormTextInputInteraction.stories.tsx +21 -22
  253. package/src/stories/grid/gridFormStatic/GridFormDropDown.stories.tsx +40 -41
  254. package/src/stories/grid/gridFormStatic/GridFormEditBearing.stories.tsx +14 -15
  255. package/src/stories/grid/gridFormStatic/GridFormEditBearingCorrection.stories.tsx +14 -15
  256. package/src/stories/grid/gridFormStatic/GridFormMessage.stories.tsx +10 -11
  257. package/src/stories/grid/gridFormStatic/GridFormMultiSelect.stories.tsx +20 -21
  258. package/src/stories/grid/gridFormStatic/GridFormPopoverMenu.stories.tsx +16 -17
  259. package/src/stories/grid/gridFormStatic/GridFormTextArea.stories.tsx +13 -14
  260. package/src/stories/grid/gridFormStatic/GridFormTextInput.stories.tsx +13 -14
  261. package/src/stories/grid/interactions/GridKeyboardInteractions.stories.tsx +68 -71
  262. package/src/stories/react-menu/ReactMenu.stories.tsx +26 -26
  263. package/src/utils/bearing.test.ts +44 -44
  264. package/src/utils/bearing.ts +20 -20
  265. package/src/utils/deferredPromise.ts +1 -1
  266. package/src/utils/storybookTestUtil.ts +2 -2
  267. package/src/utils/testQuick.ts +15 -14
  268. package/src/utils/testUtil.ts +31 -36
  269. package/src/utils/textMatcher.test.ts +9 -9
  270. package/src/utils/textMatcher.ts +8 -8
  271. package/src/utils/textValidator.test.ts +56 -56
  272. package/src/utils/textValidator.ts +11 -11
  273. package/src/utils/util.test.ts +20 -20
  274. package/src/utils/util.ts +7 -7
@@ -1,11 +1,10 @@
1
- import "../../styles/GridTheme.scss";
2
- import "../../styles/index.scss";
3
- import "@linzjs/lui/dist/scss/base.scss";
1
+ import '../../styles/GridTheme.scss';
2
+ import '../../styles/index.scss';
3
+ import '@linzjs/lui/dist/scss/base.scss';
4
+ import '@linzjs/lui/dist/fonts';
4
5
 
5
- import { Meta, StoryFn } from "@storybook/react";
6
- import { useCallback, useMemo, useState } from "react";
7
-
8
- import "@linzjs/lui/dist/fonts";
6
+ import { Meta, StoryFn } from '@storybook/react';
7
+ import { useCallback, useMemo, useState } from 'react';
9
8
 
10
9
  import {
11
10
  ColDefT,
@@ -27,14 +26,14 @@ import {
27
26
  MenuSeparator,
28
27
  MenuSeparatorString,
29
28
  wait,
30
- } from "../..";
31
- import { waitForGridReady } from "../../utils/storybookTestUtil";
29
+ } from '../..';
30
+ import { waitForGridReady } from '../../utils/storybookTestUtil';
32
31
 
33
32
  export default {
34
- title: "Components / Grids",
33
+ title: 'Components / Grids',
35
34
  component: Grid,
36
35
  args: {
37
- quickFilterValue: "",
36
+ quickFilterValue: '',
38
37
  selectable: true,
39
38
  },
40
39
  decorators: [
@@ -70,25 +69,25 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
70
69
 
71
70
  const optionsFn = useCallback(async (selectedRows: ITestRow[], filter?: string) => {
72
71
  // eslint-disable-next-line no-console
73
- console.log("optionsFn selected rows", selectedRows, filter);
72
+ console.log('optionsFn selected rows', selectedRows, filter);
74
73
  filter = filter?.toLowerCase();
75
74
  await wait(1000);
76
75
  return [
77
76
  null,
78
- "Architect",
79
- "Developer",
80
- "Product Owner",
81
- "Scrum Master",
82
- "Tester",
77
+ 'Architect',
78
+ 'Developer',
79
+ 'Product Owner',
80
+ 'Scrum Master',
81
+ 'Tester',
83
82
  MenuSeparatorString,
84
- "Custom",
83
+ 'Custom',
85
84
  ].filter((v) => (filter != null ? v != null && v.toLowerCase().indexOf(filter) === 0 : true));
86
85
  }, []);
87
86
 
88
87
  const optionsObjects = useMemo(
89
88
  () => [
90
- { code: "O1", desc: "Object One" },
91
- { code: "O2", desc: "Object Two" },
89
+ { code: 'O1', desc: 'Object One' },
90
+ { code: 'O2', desc: 'Object Two' },
92
91
  ],
93
92
  [],
94
93
  );
@@ -96,40 +95,40 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
96
95
  const columnDefs: ColDefT<ITestRow>[] = useMemo(
97
96
  () => [
98
97
  GridCell({
99
- field: "id",
100
- headerName: "Id",
98
+ field: 'id',
99
+ headerName: 'Id',
101
100
  }),
102
- GridPopoverEditDropDown<ITestRow, ITestRow["position2"]>(
101
+ GridPopoverEditDropDown<ITestRow, ITestRow['position2']>(
103
102
  {
104
- field: "position2",
105
- headerName: "Multi-edit",
103
+ field: 'position2',
104
+ headerName: 'Multi-edit',
106
105
  },
107
106
  {
108
107
  multiEdit: true,
109
108
  editorParams: {
110
109
  options: [
111
- MenuHeaderItem("Header"),
110
+ MenuHeaderItem('Header'),
112
111
  {
113
- value: "1",
114
- label: "One",
115
- disabled: "Disabled for test",
112
+ value: '1',
113
+ label: 'One',
114
+ disabled: 'Disabled for test',
116
115
  },
117
- { value: "2", label: "Two" },
116
+ { value: '2', label: 'Two' },
118
117
  MenuSeparator,
119
- { value: "3", label: "Three" },
118
+ { value: '3', label: 'Three' },
120
119
  ],
121
120
  },
122
121
  },
123
122
  ),
124
123
  GridPopoverEditDropDown(
125
124
  {
126
- field: "position3",
127
- headerName: "Custom callback",
125
+ field: 'position3',
126
+ headerName: 'Custom callback',
128
127
  },
129
128
  {
130
129
  multiEdit: true,
131
130
  editorParams: {
132
- options: [null, "Architect", "Developer", "Product Owner", "Scrum Master", "Tester"],
131
+ options: [null, 'Architect', 'Developer', 'Product Owner', 'Scrum Master', 'Tester'],
133
132
  onSelectedItem: async (selected) => {
134
133
  await wait(2000);
135
134
  selected.selectedRows.forEach((row) => {
@@ -141,45 +140,45 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
141
140
  ),
142
141
  GridPopoverEditDropDown(
143
142
  {
144
- field: "position",
145
- headerName: "Options Fn",
143
+ field: 'position',
144
+ headerName: 'Options Fn',
146
145
  },
147
146
  {
148
147
  multiEdit: false,
149
148
  editorParams: {
150
- filtered: "reload",
151
- filterPlaceholder: "Search me...",
149
+ filtered: 'reload',
150
+ filterPlaceholder: 'Search me...',
152
151
  options: optionsFn,
153
152
  },
154
153
  },
155
154
  ),
156
155
  GridPopoverEditDropDown(
157
156
  {
158
- colId: "position3filtered",
159
- field: "position3",
160
- headerName: "Filtered",
157
+ colId: 'position3filtered',
158
+ field: 'position3',
159
+ headerName: 'Filtered',
161
160
  editable: false,
162
161
  },
163
162
  {
164
163
  multiEdit: true,
165
164
  editorParams: {
166
- filtered: "local",
167
- filterPlaceholder: "Filter this",
168
- options: [null, "Architect", "Developer", "Product Owner", "Scrum Master", "Tester"],
165
+ filtered: 'local',
166
+ filterPlaceholder: 'Filter this',
167
+ options: [null, 'Architect', 'Developer', 'Product Owner', 'Scrum Master', 'Tester'],
169
168
  },
170
169
  },
171
170
  ),
172
171
  GridPopoverEditDropDown(
173
172
  {
174
- colId: "position4",
175
- headerName: "Filtered (object)",
173
+ colId: 'position4',
174
+ headerName: 'Filtered (object)',
176
175
  valueGetter: ({ data }) => data?.position4?.desc,
177
176
  },
178
177
  {
179
178
  multiEdit: true,
180
179
  editorParams: {
181
- filtered: "local",
182
- filterPlaceholder: "Filter this",
180
+ filtered: 'local',
181
+ filterPlaceholder: 'Filter this',
183
182
  options: optionsObjects.map((o) => {
184
183
  return { value: o, label: o.desc, disabled: false };
185
184
  }),
@@ -188,26 +187,26 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
188
187
  ),
189
188
  GridPopoverEditDropDown(
190
189
  {
191
- field: "code",
192
- headerName: "Filter Selectable",
190
+ field: 'code',
191
+ headerName: 'Filter Selectable',
193
192
  },
194
193
  {
195
194
  multiEdit: true,
196
195
  editorParams: {
197
- filtered: "local",
198
- filterPlaceholder: "Filter this",
199
- filterHelpText: "Press enter to save custom value",
196
+ filtered: 'local',
197
+ filterPlaceholder: 'Filter this',
198
+ filterHelpText: 'Press enter to save custom value',
200
199
  options: optionsObjects.map((o) => {
201
200
  return { value: o, label: o.desc, disabled: false };
202
201
  }),
203
- onSelectedItem: async (selected) => {
202
+ onSelectedItem: (selected) => {
204
203
  // eslint-disable-next-line no-console
205
- console.log("onSelectedItem selected", selected);
204
+ console.log('onSelectedItem selected', selected);
206
205
  selected.selectedRows.forEach((row) => (row.code = selected.value.code));
207
206
  },
208
- onSelectFilter: async (selected) => {
207
+ onSelectFilter: (selected) => {
209
208
  // eslint-disable-next-line no-console
210
- console.log("onSelectFilter selected", selected);
209
+ console.log('onSelectFilter selected', selected);
211
210
  selected.selectedRows.forEach((row) => (row.code = selected.value));
212
211
  },
213
212
  },
@@ -215,44 +214,44 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
215
214
  ),
216
215
  GridPopoverEditDropDown(
217
216
  {
218
- field: "sub",
219
- headerName: "Subcomponent",
217
+ field: 'sub',
218
+ headerName: 'Subcomponent',
220
219
  valueGetter: ({ data }) => data?.sub,
221
220
  },
222
221
  {
223
222
  multiEdit: true,
224
223
  editorParams: {
225
- filtered: "local",
226
- filterPlaceholder: "Filter this",
224
+ filtered: 'local',
225
+ filterPlaceholder: 'Filter this',
227
226
  options: () => {
228
227
  return [
229
228
  {
230
- value: "one",
231
- label: "One",
229
+ value: 'one',
230
+ label: 'One',
232
231
  },
233
232
  {
234
- value: "two",
235
- label: "Two",
233
+ value: 'two',
234
+ label: 'Two',
236
235
  },
237
236
  {
238
- value: "oth",
239
- label: "Other text input",
237
+ value: 'oth',
238
+ label: 'Other text input',
240
239
  subComponent: () => (
241
- <GridFormSubComponentTextInput placeholder={"Other..."} defaultValue={"a"} required={true} />
240
+ <GridFormSubComponentTextInput placeholder={'Other...'} defaultValue={'a'} required={true} />
242
241
  ),
243
242
  },
244
243
  {
245
- value: "oth",
246
- label: "Other text area",
244
+ value: 'oth',
245
+ label: 'Other text area',
247
246
  subComponent: () => (
248
- <GridFormSubComponentTextArea placeholder={"Other..."} defaultValue={"b"} required={true} />
247
+ <GridFormSubComponentTextArea placeholder={'Other...'} defaultValue={'b'} required={true} />
249
248
  ),
250
249
  },
251
250
  ];
252
251
  },
253
252
  onSelectedItem: async (selected) => {
254
253
  // eslint-disable-next-line no-console
255
- console.log("onSelectedItem", selected);
254
+ console.log('onSelectedItem', selected);
256
255
  await wait(500);
257
256
  selected.selectedRows.forEach((row) => (row.sub = selected.subComponentValue ?? selected.value));
258
257
  },
@@ -263,7 +262,7 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
263
262
  {},
264
263
  {
265
264
  editorParams: {
266
- options: async () => [{ label: "Hello", action: async () => {} }],
265
+ options: () => [{ label: 'Hello', action: async () => {} }],
267
266
  },
268
267
  },
269
268
  ),
@@ -274,30 +273,30 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
274
273
  const [rowData] = useState([
275
274
  {
276
275
  id: 1000,
277
- position: "Tester",
278
- position2: "1",
279
- position3: "Tester",
280
- position4: { code: "O1", desc: "Object One" },
281
- code: "O1",
282
- sub: "two",
276
+ position: 'Tester',
277
+ position2: '1',
278
+ position3: 'Tester',
279
+ position4: { code: 'O1', desc: 'Object One' },
280
+ code: 'O1',
281
+ sub: 'two',
283
282
  },
284
283
  {
285
284
  id: 1001,
286
- position: "Developer",
287
- position2: "2",
288
- position3: "Developer",
289
- position4: { code: "O2", desc: "Object Two" },
290
- code: "O2",
291
- sub: "one",
285
+ position: 'Developer',
286
+ position2: '2',
287
+ position3: 'Developer',
288
+ position4: { code: 'O2', desc: 'Object Two' },
289
+ code: 'O2',
290
+ sub: 'one',
292
291
  },
293
292
  {
294
293
  id: 1002,
295
- position: "Scrum Master",
296
- position2: "2",
297
- position3: "Architect",
298
- position4: { code: "O2", desc: "Object Two" },
299
- code: "O2",
300
- sub: "one",
294
+ position: 'Scrum Master',
295
+ position2: '2',
296
+ position3: 'Architect',
297
+ position4: { code: 'O2', desc: 'Object Two' },
298
+ code: 'O2',
299
+ sub: 'one',
301
300
  },
302
301
  ] as ITestRow[]);
303
302
 
@@ -306,7 +305,7 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
306
305
  <GridFilters>
307
306
  <GridFilterQuick />
308
307
  <GridFilterColumnsToggle />
309
- <GridFilterDownloadCsvButton fileName={"customFilename"} />
308
+ <GridFilterDownloadCsvButton fileName={'customFilename'} />
310
309
  </GridFilters>
311
310
  <Grid
312
311
  {...props}
@@ -314,10 +313,10 @@ const GridEditDropDownTemplate: StoryFn<typeof Grid> = (props: GridProps) => {
314
313
  setExternalSelectedItems={setExternalSelectedItems}
315
314
  columnDefs={columnDefs}
316
315
  rowData={rowData}
317
- domLayout={"autoHeight"}
316
+ domLayout={'autoHeight'}
318
317
  onCellEditingComplete={() => {
319
318
  /* eslint-disable-next-line no-console */
320
- console.log("Cell editing complete");
319
+ console.log('Cell editing complete');
321
320
  }}
322
321
  />
323
322
  </GridWrapper>
@@ -1,12 +1,11 @@
1
- import "../../styles/GridTheme.scss";
2
- import "../../styles/index.scss";
3
- import "@linzjs/lui/dist/scss/base.scss";
1
+ import '../../styles/GridTheme.scss';
2
+ import '../../styles/index.scss';
3
+ import '@linzjs/lui/dist/scss/base.scss';
4
+ import '@linzjs/lui/dist/fonts';
4
5
 
5
- import { Meta, StoryFn } from "@storybook/react";
6
- import { isEmpty, partition } from "lodash-es";
7
- import { useMemo, useState } from "react";
8
-
9
- import "@linzjs/lui/dist/fonts";
6
+ import { Meta, StoryFn } from '@storybook/react';
7
+ import { isEmpty, partition } from 'lodash-es';
8
+ import { useMemo, useState } from 'react';
10
9
 
11
10
  import {
12
11
  ColDefT,
@@ -20,14 +19,14 @@ import {
20
19
  MenuSeparator,
21
20
  MultiSelectOption,
22
21
  wait,
23
- } from "../..";
24
- import { waitForGridReady } from "../../utils/storybookTestUtil";
22
+ } from '../..';
23
+ import { waitForGridReady } from '../../utils/storybookTestUtil';
25
24
 
26
25
  export default {
27
- title: "Components / Grids",
26
+ title: 'Components / Grids',
28
27
  component: Grid,
29
28
  args: {
30
- quickFilterValue: "",
29
+ quickFilterValue: '',
31
30
  selectable: true,
32
31
  },
33
32
  decorators: [
@@ -55,56 +54,56 @@ const GridEditMultiSelectTemplate: StoryFn<typeof Grid> = (props: GridProps) =>
55
54
 
56
55
  const columnDefs: ColDefT<ITestRow>[] = useMemo(() => {
57
56
  const positionMap: Record<string, string> = {
58
- lot1: "Lot 1",
59
- lot2: "Lot 2",
60
- lot3: "Lot 3",
61
- lot4: "Lot A 482392",
62
- appA: "A",
63
- appB: "B",
64
- other: "Other",
57
+ lot1: 'Lot 1',
58
+ lot2: 'Lot 2',
59
+ lot3: 'Lot 3',
60
+ lot4: 'Lot A 482392',
61
+ appA: 'A',
62
+ appB: 'B',
63
+ other: 'Other',
65
64
  };
66
65
  return [
67
66
  GridCell({
68
- field: "id",
69
- headerName: "Id",
67
+ field: 'id',
68
+ headerName: 'Id',
70
69
  }),
71
- GridPopoutEditMultiSelect<ITestRow, ITestRow["position"]>(
70
+ GridPopoutEditMultiSelect<ITestRow, ITestRow['position']>(
72
71
  {
73
- field: "position",
74
- headerName: "Position",
72
+ field: 'position',
73
+ headerName: 'Position',
75
74
  valueFormatter: ({ value }) => {
76
- if (value == null) return "";
77
- return value.map((v: string) => positionMap[v] ?? v).join(", ");
75
+ if (value == null) return '';
76
+ return value.map((v: string) => positionMap[v] ?? v).join(', ');
78
77
  },
79
78
  },
80
79
  {
81
80
  multiEdit: true,
82
81
  editorParams: {
83
82
  filtered: true,
84
- filterPlaceholder: "Filter position",
85
- className: "GridMultiSelect-containerUnlimited",
86
- headers: [{ header: "Header item" }],
83
+ filterPlaceholder: 'Filter position',
84
+ className: 'GridMultiSelect-containerUnlimited',
85
+ headers: [{ header: 'Header item' }],
87
86
  options: (selectedRows) => {
88
87
  const firstRow = selectedRows[0];
89
88
  return [
90
- { value: "lot1", label: "Lot 1" },
91
- { value: "lot2", label: "Lot 2" },
92
- { value: "lot3", label: "Lot 3" },
93
- { value: "lot11", label: "Lot 11" },
94
- { value: "lot4", label: "Lot A 482392" },
95
- { value: "appA", label: "A" },
96
- { value: "appB", label: "B" },
89
+ { value: 'lot1', label: 'Lot 1' },
90
+ { value: 'lot2', label: 'Lot 2' },
91
+ { value: 'lot3', label: 'Lot 3' },
92
+ { value: 'lot11', label: 'Lot 11' },
93
+ { value: 'lot4', label: 'Lot A 482392' },
94
+ { value: 'appA', label: 'A' },
95
+ { value: 'appB', label: 'B' },
97
96
  MenuSeparator,
98
97
  {
99
- value: "other",
100
- label: "Other",
101
- subComponent: () => <GridFormSubComponentTextArea required={true} maxLength={5} defaultValue={""} />,
98
+ value: 'other',
99
+ label: 'Other',
100
+ subComponent: () => <GridFormSubComponentTextArea required={true} maxLength={5} defaultValue={''} />,
102
101
  },
103
102
  ].map((r) => ({ ...r, checked: firstRow.position?.includes(r.value) }));
104
103
  },
105
104
  onSave: async ({ selectedRows, selectedOptions }) => {
106
105
  // eslint-disable-next-line no-console
107
- console.log("multiSelect result", { selectedRows, selectedOptions });
106
+ console.log('multiSelect result', { selectedRows, selectedOptions });
108
107
 
109
108
  await wait(1000);
110
109
  const [subValues, normalValues] = partition(selectedOptions, (o) => o.subComponent);
@@ -115,41 +114,41 @@ const GridEditMultiSelectTemplate: StoryFn<typeof Grid> = (props: GridProps) =>
115
114
  },
116
115
  },
117
116
  ),
118
- GridPopoutEditMultiSelect<ITestRow, ITestRow["position"]>(
117
+ GridPopoutEditMultiSelect<ITestRow, ITestRow['position']>(
119
118
  {
120
- field: "position",
121
- headerName: "Parcel picker",
119
+ field: 'position',
120
+ headerName: 'Parcel picker',
122
121
  valueFormatter: ({ value }) => {
123
- if (value == null) return "";
124
- return value.map((v: string) => positionMap[v] ?? v).join(", ");
122
+ if (value == null) return '';
123
+ return value.map((v: string) => positionMap[v] ?? v).join(', ');
125
124
  },
126
125
  },
127
126
  {
128
127
  multiEdit: true,
129
128
  editorParams: {
130
129
  filtered: true,
131
- filterPlaceholder: "Filter/add custom parcel...",
130
+ filterPlaceholder: 'Filter/add custom parcel...',
132
131
  filterHelpText: (filter, options) =>
133
132
  isEmpty(filter) || options.find((o) => o.label && o.label.toLowerCase() === filter.toLowerCase())
134
133
  ? undefined
135
- : "Press enter to add free text",
136
- onSelectFilter: async ({ filter, options }) => {
134
+ : 'Press enter to add free text',
135
+ onSelectFilter: ({ filter, options }) => {
137
136
  if (isEmpty(filter) || options.find((o) => o.label && o.label.toLowerCase() === filter.toLowerCase()))
138
137
  return;
139
- options.push({ value: filter, label: filter, filter: "freeText", checked: true });
138
+ options.push({ value: filter, label: filter, filter: 'freeText', checked: true });
140
139
  },
141
- className: "GridMultiSelect-containerLarge",
142
- headers: [{ header: "Free text", filter: "freeText" }, { header: "Parcels" }],
140
+ className: 'GridMultiSelect-containerLarge',
141
+ headers: [{ header: 'Free text', filter: 'freeText' }, { header: 'Parcels' }],
143
142
  options: (selectedRows) => {
144
143
  const firstRow = selectedRows[0];
145
144
  const r: MultiSelectOption[] = [
146
- { value: "lot1", label: "Lot 1" },
147
- { value: "lot2", label: "Lot 2", warning: "Don't select me" },
148
- { value: "lot3", label: "Lot 3" },
149
- { value: "lot11", label: "Lot 11" },
150
- { value: "lot4", label: "Lot A 482392" },
151
- { value: "appA", label: "A" },
152
- { value: "appB", label: "B" },
145
+ { value: 'lot1', label: 'Lot 1' },
146
+ { value: 'lot2', label: 'Lot 2', warning: "Don't select me" },
147
+ { value: 'lot3', label: 'Lot 3' },
148
+ { value: 'lot11', label: 'Lot 11' },
149
+ { value: 'lot4', label: 'Lot A 482392' },
150
+ { value: 'appA', label: 'A' },
151
+ { value: 'appB', label: 'B' },
153
152
  ].map((r) => ({ ...r, checked: firstRow.position?.includes(r.value) }));
154
153
  firstRow.position?.forEach(
155
154
  (p) =>
@@ -158,14 +157,14 @@ const GridEditMultiSelectTemplate: StoryFn<typeof Grid> = (props: GridProps) =>
158
157
  value: p,
159
158
  label: p,
160
159
  checked: true,
161
- filter: "freeText",
160
+ filter: 'freeText',
162
161
  }),
163
162
  );
164
163
  return r;
165
164
  },
166
165
  onSave: async ({ selectedRows, selectedOptions }) => {
167
166
  // eslint-disable-next-line no-console
168
- console.log("multiSelect result", { selectedRows, selectedOptions });
167
+ console.log('multiSelect result', { selectedRows, selectedOptions });
169
168
 
170
169
  await wait(1000);
171
170
  const [subValues, normalValues] = partition(selectedOptions, (o) => o.subComponent);
@@ -180,8 +179,8 @@ const GridEditMultiSelectTemplate: StoryFn<typeof Grid> = (props: GridProps) =>
180
179
  }, []);
181
180
 
182
181
  const [rowData] = useState([
183
- { id: 1000, position: ["lot1", "lot2"], position2: "lot1", position3: "Tester" },
184
- { id: 1001, position: ["appA"], position2: "lot2", position3: "Developer" },
182
+ { id: 1000, position: ['lot1', 'lot2'], position2: 'lot1', position3: 'Tester' },
183
+ { id: 1001, position: ['appA'], position2: 'lot2', position3: 'Developer' },
185
184
  ] as ITestRow[]);
186
185
 
187
186
  return (
@@ -192,7 +191,7 @@ const GridEditMultiSelectTemplate: StoryFn<typeof Grid> = (props: GridProps) =>
192
191
  setExternalSelectedItems={setExternalSelectedItems}
193
192
  columnDefs={columnDefs}
194
193
  rowData={rowData}
195
- domLayout={"autoHeight"}
194
+ domLayout={'autoHeight'}
196
195
  />
197
196
  );
198
197
  };