@etsoo/materialui 1.5.55 → 1.5.57
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/__tests__/ReactAppTests.tsx +27 -3
- package/lib/cjs/ButtonPopupCheckbox.d.ts +1 -1
- package/lib/cjs/ButtonPopupCheckbox.js +12 -7
- package/lib/cjs/ButtonPopupRadio.d.ts +1 -1
- package/lib/cjs/ButtonPopupRadio.js +12 -7
- package/lib/mjs/ButtonPopupCheckbox.d.ts +1 -1
- package/lib/mjs/ButtonPopupCheckbox.js +12 -7
- package/lib/mjs/ButtonPopupRadio.d.ts +1 -1
- package/lib/mjs/ButtonPopupRadio.js +12 -7
- package/package.json +2 -2
- package/src/ButtonPopupCheckbox.tsx +12 -8
- package/src/ButtonPopupRadio.tsx +12 -8
|
@@ -4,9 +4,33 @@ import { DataTypes, DomUtils, IActionResult, Utils } from "@etsoo/shared";
|
|
|
4
4
|
import React, { act } from "react";
|
|
5
5
|
import { createRoot } from "react-dom/client";
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
if (typeof localStorage === "undefined") {
|
|
8
|
+
const mockLocalStorage = (() => {
|
|
9
|
+
let store = {} as Storage;
|
|
10
|
+
|
|
11
|
+
return {
|
|
12
|
+
getItem(key: string) {
|
|
13
|
+
return store[key];
|
|
14
|
+
},
|
|
15
|
+
|
|
16
|
+
setItem(key: string, value: string) {
|
|
17
|
+
store[key] = value;
|
|
18
|
+
},
|
|
19
|
+
|
|
20
|
+
removeItem(key: string) {
|
|
21
|
+
delete store[key];
|
|
22
|
+
},
|
|
23
|
+
|
|
24
|
+
clear() {
|
|
25
|
+
store = {} as Storage;
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
})();
|
|
29
|
+
|
|
30
|
+
Object.defineProperty(globalThis, "localStorage", {
|
|
31
|
+
value: mockLocalStorage
|
|
32
|
+
});
|
|
33
|
+
}
|
|
10
34
|
|
|
11
35
|
// Detected country or region
|
|
12
36
|
const { detectedCountry } = DomUtils;
|
|
@@ -90,13 +90,18 @@ function ButtonPopupCheckbox(props) {
|
|
|
90
90
|
const [items, setItems] = react_1.default.useState([]);
|
|
91
91
|
const [selectedIds, setSelectedIds] = react_1.default.useState();
|
|
92
92
|
react_1.default.useEffect(() => {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
93
|
+
if (typeof loadData === "function") {
|
|
94
|
+
// Load data
|
|
95
|
+
loadData().then((data) => {
|
|
96
|
+
if (data != null) {
|
|
97
|
+
setItems(data);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
setItems(loadData);
|
|
103
|
+
}
|
|
104
|
+
}, [loadData]);
|
|
100
105
|
react_1.default.useEffect(() => {
|
|
101
106
|
// Set selected ids
|
|
102
107
|
setSelectedIds(value);
|
|
@@ -86,13 +86,18 @@ function ButtonPopupRadio(props) {
|
|
|
86
86
|
? items.find((item) => item.id === currentValue)
|
|
87
87
|
: undefined;
|
|
88
88
|
react_1.default.useEffect(() => {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
89
|
+
if (typeof loadData === "function") {
|
|
90
|
+
// Load data
|
|
91
|
+
loadData().then((data) => {
|
|
92
|
+
if (data != null) {
|
|
93
|
+
setItems(data);
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
setItems(loadData);
|
|
99
|
+
}
|
|
100
|
+
}, [loadData]);
|
|
96
101
|
react_1.default.useEffect(() => {
|
|
97
102
|
setCurrentValue(value);
|
|
98
103
|
}, [value]);
|
|
@@ -84,13 +84,18 @@ export function ButtonPopupCheckbox(props) {
|
|
|
84
84
|
const [items, setItems] = React.useState([]);
|
|
85
85
|
const [selectedIds, setSelectedIds] = React.useState();
|
|
86
86
|
React.useEffect(() => {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
87
|
+
if (typeof loadData === "function") {
|
|
88
|
+
// Load data
|
|
89
|
+
loadData().then((data) => {
|
|
90
|
+
if (data != null) {
|
|
91
|
+
setItems(data);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
setItems(loadData);
|
|
97
|
+
}
|
|
98
|
+
}, [loadData]);
|
|
94
99
|
React.useEffect(() => {
|
|
95
100
|
// Set selected ids
|
|
96
101
|
setSelectedIds(value);
|
|
@@ -80,13 +80,18 @@ export function ButtonPopupRadio(props) {
|
|
|
80
80
|
? items.find((item) => item.id === currentValue)
|
|
81
81
|
: undefined;
|
|
82
82
|
React.useEffect(() => {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
83
|
+
if (typeof loadData === "function") {
|
|
84
|
+
// Load data
|
|
85
|
+
loadData().then((data) => {
|
|
86
|
+
if (data != null) {
|
|
87
|
+
setItems(data);
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
setItems(loadData);
|
|
93
|
+
}
|
|
94
|
+
}, [loadData]);
|
|
90
95
|
React.useEffect(() => {
|
|
91
96
|
setCurrentValue(value);
|
|
92
97
|
}, [value]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@etsoo/materialui",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.57",
|
|
4
4
|
"description": "TypeScript Material-UI Implementation",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/mjs/index.js",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"@dnd-kit/sortable": "^10.0.0",
|
|
41
41
|
"@emotion/react": "^11.14.0",
|
|
42
42
|
"@emotion/styled": "^11.14.0",
|
|
43
|
-
"@etsoo/appscript": "^1.6.
|
|
43
|
+
"@etsoo/appscript": "^1.6.38",
|
|
44
44
|
"@etsoo/notificationbase": "^1.1.62",
|
|
45
45
|
"@etsoo/react": "^1.8.45",
|
|
46
46
|
"@etsoo/shared": "^1.2.74",
|
|
@@ -67,7 +67,7 @@ export type ButtonPopupCheckboxProps<D extends DnDItemType> = Omit<
|
|
|
67
67
|
/**
|
|
68
68
|
* Load data
|
|
69
69
|
*/
|
|
70
|
-
loadData: () => Promise<D[]
|
|
70
|
+
loadData: D[] | (() => Promise<D[]>);
|
|
71
71
|
|
|
72
72
|
/**
|
|
73
73
|
* On add handler
|
|
@@ -296,13 +296,17 @@ export function ButtonPopupCheckbox<D extends DnDItemType>(
|
|
|
296
296
|
const [selectedIds, setSelectedIds] = React.useState<D["id"][]>();
|
|
297
297
|
|
|
298
298
|
React.useEffect(() => {
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
299
|
+
if (typeof loadData === "function") {
|
|
300
|
+
// Load data
|
|
301
|
+
loadData().then((data) => {
|
|
302
|
+
if (data != null) {
|
|
303
|
+
setItems(data);
|
|
304
|
+
}
|
|
305
|
+
});
|
|
306
|
+
} else {
|
|
307
|
+
setItems(loadData);
|
|
308
|
+
}
|
|
309
|
+
}, [loadData]);
|
|
306
310
|
|
|
307
311
|
React.useEffect(() => {
|
|
308
312
|
// Set selected ids
|
package/src/ButtonPopupRadio.tsx
CHANGED
|
@@ -64,7 +64,7 @@ export type ButtonPopupRadioProps<D extends DnDItemType> = Omit<
|
|
|
64
64
|
/**
|
|
65
65
|
* Load data
|
|
66
66
|
*/
|
|
67
|
-
loadData: () => Promise<D[]
|
|
67
|
+
loadData: D[] | (() => Promise<D[]>);
|
|
68
68
|
|
|
69
69
|
/**
|
|
70
70
|
* On add handler
|
|
@@ -270,13 +270,17 @@ export function ButtonPopupRadio<D extends DnDItemType>(
|
|
|
270
270
|
: undefined;
|
|
271
271
|
|
|
272
272
|
React.useEffect(() => {
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
273
|
+
if (typeof loadData === "function") {
|
|
274
|
+
// Load data
|
|
275
|
+
loadData().then((data) => {
|
|
276
|
+
if (data != null) {
|
|
277
|
+
setItems(data);
|
|
278
|
+
}
|
|
279
|
+
});
|
|
280
|
+
} else {
|
|
281
|
+
setItems(loadData);
|
|
282
|
+
}
|
|
283
|
+
}, [loadData]);
|
|
280
284
|
|
|
281
285
|
React.useEffect(() => {
|
|
282
286
|
setCurrentValue(value);
|