@etsoo/react 1.4.11 → 1.4.12

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.
@@ -43,7 +43,7 @@ export interface DnDListProps<D extends {}, E extends React.ElementType> {
43
43
  /**
44
44
  * Top and bottom sides renderer
45
45
  */
46
- sideRenderer?: (top: boolean, addItem: (item: D) => boolean, addItems: (items: D[]) => number) => React.ReactNode;
46
+ sideRenderer?: (top: boolean, addItem: (item: D) => boolean, addItems: (items: D[]) => number, reloadItems: () => void) => React.ReactNode;
47
47
  /**
48
48
  * Name for hidden form input
49
49
  */
package/lib/mu/DnDList.js CHANGED
@@ -90,13 +90,18 @@ export function DnDList(props) {
90
90
  // Update the state
91
91
  changeItems(newItems);
92
92
  };
93
- React.useEffect(() => {
93
+ // Reload items
94
+ const reloadItems = () => {
94
95
  // Load data
95
96
  loadData(name).then((items) => setItems(items));
97
+ };
98
+ React.useEffect(() => {
99
+ // Load data
100
+ reloadItems();
96
101
  }, [name]);
97
102
  // Layout
98
103
  return (React.createElement(React.Fragment, null,
99
- sideRenderer && sideRenderer(true, addItem, addItems),
104
+ sideRenderer && sideRenderer(true, addItem, addItems, reloadItems),
100
105
  React.createElement(Component, { ...componentProps },
101
106
  React.createElement(DragDropContext, { onDragEnd: onDragEndLocal },
102
107
  React.createElement(Droppable, { droppableId: name }, (provided, snapshot) => (React.createElement("div", { ...provided.droppableProps, ref: provided.innerRef, style: getListStyle(snapshot.isDraggingOver) },
@@ -113,5 +118,6 @@ export function DnDList(props) {
113
118
  } }, children(item, index, deleteItem, editItem)))));
114
119
  }),
115
120
  provided.placeholder))))),
116
- sideRenderer && sideRenderer(false, addItem, addItems)));
121
+ sideRenderer &&
122
+ sideRenderer(false, addItem, addItems, reloadItems)));
117
123
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etsoo/react",
3
- "version": "1.4.11",
3
+ "version": "1.4.12",
4
4
  "description": "TypeScript ReactJs framework",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -50,7 +50,7 @@
50
50
  "@emotion/react": "^11.7.1",
51
51
  "@emotion/style": "^0.8.0",
52
52
  "@emotion/styled": "^11.6.0",
53
- "@etsoo/appscript": "^1.2.18",
53
+ "@etsoo/appscript": "^1.2.20",
54
54
  "@etsoo/notificationbase": "^1.1.0",
55
55
  "@etsoo/shared": "^1.1.0",
56
56
  "@mui/icons-material": "^5.2.5",
@@ -89,7 +89,7 @@
89
89
  "eslint-config-airbnb-base": "^15.0.0",
90
90
  "eslint-plugin-import": "^2.25.4",
91
91
  "eslint-plugin-react": "^7.28.0",
92
- "jest": "^27.4.5",
92
+ "jest": "^27.4.7",
93
93
  "react-test-renderer": "^17.0.2",
94
94
  "ts-jest": "^27.1.2",
95
95
  "typescript": "^4.5.4"
@@ -68,7 +68,8 @@ export interface DnDListProps<D extends {}, E extends React.ElementType> {
68
68
  sideRenderer?: (
69
69
  top: boolean,
70
70
  addItem: (item: D) => boolean,
71
- addItems: (items: D[]) => number
71
+ addItems: (items: D[]) => number,
72
+ reloadItems: () => void
72
73
  ) => React.ReactNode;
73
74
 
74
75
  /**
@@ -210,15 +211,21 @@ export function DnDList<
210
211
  changeItems(newItems);
211
212
  };
212
213
 
213
- React.useEffect(() => {
214
+ // Reload items
215
+ const reloadItems = () => {
214
216
  // Load data
215
217
  loadData(name).then((items) => setItems(items));
218
+ };
219
+
220
+ React.useEffect(() => {
221
+ // Load data
222
+ reloadItems();
216
223
  }, [name]);
217
224
 
218
225
  // Layout
219
226
  return (
220
227
  <React.Fragment>
221
- {sideRenderer && sideRenderer(true, addItem, addItems)}
228
+ {sideRenderer && sideRenderer(true, addItem, addItems, reloadItems)}
222
229
  <Component {...componentProps}>
223
230
  <DragDropContext onDragEnd={onDragEndLocal}>
224
231
  <Droppable droppableId={name}>
@@ -274,7 +281,8 @@ export function DnDList<
274
281
  </Droppable>
275
282
  </DragDropContext>
276
283
  </Component>
277
- {sideRenderer && sideRenderer(false, addItem, addItems)}
284
+ {sideRenderer &&
285
+ sideRenderer(false, addItem, addItems, reloadItems)}
278
286
  </React.Fragment>
279
287
  );
280
288
  }