@etsoo/materialui 1.5.63 → 1.5.65

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.
@@ -0,0 +1,17 @@
1
+ import { InputFieldProps } from "./InputField";
2
+ /**
3
+ * Data load field properties
4
+ */
5
+ export type DataLoadFieldProps = InputFieldProps & {
6
+ /**
7
+ *
8
+ * Load data handler
9
+ */
10
+ loadData: () => Promise<string | undefined>;
11
+ };
12
+ /**
13
+ * Data load field component
14
+ * @param props Properties
15
+ * @returns Component
16
+ */
17
+ export declare function DataLoadField(props: DataLoadFieldProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DataLoadField = DataLoadField;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = __importDefault(require("react"));
9
+ const InputField_1 = require("./InputField");
10
+ /**
11
+ * Data load field component
12
+ * @param props Properties
13
+ * @returns Component
14
+ */
15
+ function DataLoadField(props) {
16
+ // Destruct
17
+ const { disabled = true, fullWidth = true, loadData, ...rest } = props;
18
+ // Ref
19
+ const inputRef = react_1.default.useRef(null);
20
+ react_1.default.useEffect(() => {
21
+ loadData().then((data) => (inputRef.current.value = data ?? ""));
22
+ }, [loadData]);
23
+ // Layout
24
+ return ((0, jsx_runtime_1.jsx)(InputField_1.InputField, { disabled: disabled, fullWidth: fullWidth, inputRef: inputRef, ...rest }));
25
+ }
@@ -15,14 +15,14 @@ const ReactApp_1 = require("./app/ReactApp");
15
15
  */
16
16
  function JsonDataInput(props) {
17
17
  // Destruct
18
- const { onChange, rows = 3, ...rest } = props;
18
+ const { error, helperText, onChange, rows = 3, ...rest } = props;
19
19
  // Global app
20
20
  const app = (0, ReactApp_1.useRequiredAppContext)();
21
21
  const jsonError = app.get("jsonDataError") ?? "JSON format error";
22
22
  // Error message
23
- const [error, setError] = react_1.default.useState();
23
+ const [localError, setError] = react_1.default.useState();
24
24
  // Layout
25
- return ((0, jsx_runtime_1.jsx)(InputField_1.InputField, { multiline: true, rows: rows, ...rest, error: !!error, helperText: error, onChange: (e) => {
25
+ return ((0, jsx_runtime_1.jsx)(InputField_1.InputField, { multiline: true, rows: rows, ...rest, error: localError ? true : error, helperText: localError ?? helperText, onChange: (e) => {
26
26
  if (onChange) {
27
27
  onChange(e);
28
28
  if (e.isDefaultPrevented())
@@ -50,6 +50,7 @@ export * from "./CultureDataTable";
50
50
  export * from "./CustomFabProps";
51
51
  export * from "./DataGridEx";
52
52
  export * from "./DataGridRenderers";
53
+ export * from "./DataLoadField";
53
54
  export * from "./DataSteps";
54
55
  export * from "./DataTable";
55
56
  export * from "./DialogButton";
package/lib/cjs/index.js CHANGED
@@ -66,6 +66,7 @@ __exportStar(require("./CultureDataTable"), exports);
66
66
  __exportStar(require("./CustomFabProps"), exports);
67
67
  __exportStar(require("./DataGridEx"), exports);
68
68
  __exportStar(require("./DataGridRenderers"), exports);
69
+ __exportStar(require("./DataLoadField"), exports);
69
70
  __exportStar(require("./DataSteps"), exports);
70
71
  __exportStar(require("./DataTable"), exports);
71
72
  __exportStar(require("./DialogButton"), exports);
@@ -0,0 +1,17 @@
1
+ import { InputFieldProps } from "./InputField";
2
+ /**
3
+ * Data load field properties
4
+ */
5
+ export type DataLoadFieldProps = InputFieldProps & {
6
+ /**
7
+ *
8
+ * Load data handler
9
+ */
10
+ loadData: () => Promise<string | undefined>;
11
+ };
12
+ /**
13
+ * Data load field component
14
+ * @param props Properties
15
+ * @returns Component
16
+ */
17
+ export declare function DataLoadField(props: DataLoadFieldProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { InputField } from "./InputField";
4
+ /**
5
+ * Data load field component
6
+ * @param props Properties
7
+ * @returns Component
8
+ */
9
+ export function DataLoadField(props) {
10
+ // Destruct
11
+ const { disabled = true, fullWidth = true, loadData, ...rest } = props;
12
+ // Ref
13
+ const inputRef = React.useRef(null);
14
+ React.useEffect(() => {
15
+ loadData().then((data) => (inputRef.current.value = data ?? ""));
16
+ }, [loadData]);
17
+ // Layout
18
+ return (_jsx(InputField, { disabled: disabled, fullWidth: fullWidth, inputRef: inputRef, ...rest }));
19
+ }
@@ -9,14 +9,14 @@ import { useRequiredAppContext } from "./app/ReactApp";
9
9
  */
10
10
  export function JsonDataInput(props) {
11
11
  // Destruct
12
- const { onChange, rows = 3, ...rest } = props;
12
+ const { error, helperText, onChange, rows = 3, ...rest } = props;
13
13
  // Global app
14
14
  const app = useRequiredAppContext();
15
15
  const jsonError = app.get("jsonDataError") ?? "JSON format error";
16
16
  // Error message
17
- const [error, setError] = React.useState();
17
+ const [localError, setError] = React.useState();
18
18
  // Layout
19
- return (_jsx(InputField, { multiline: true, rows: rows, ...rest, error: !!error, helperText: error, onChange: (e) => {
19
+ return (_jsx(InputField, { multiline: true, rows: rows, ...rest, error: localError ? true : error, helperText: localError ?? helperText, onChange: (e) => {
20
20
  if (onChange) {
21
21
  onChange(e);
22
22
  if (e.isDefaultPrevented())
@@ -50,6 +50,7 @@ export * from "./CultureDataTable";
50
50
  export * from "./CustomFabProps";
51
51
  export * from "./DataGridEx";
52
52
  export * from "./DataGridRenderers";
53
+ export * from "./DataLoadField";
53
54
  export * from "./DataSteps";
54
55
  export * from "./DataTable";
55
56
  export * from "./DialogButton";
package/lib/mjs/index.js CHANGED
@@ -50,6 +50,7 @@ export * from "./CultureDataTable";
50
50
  export * from "./CustomFabProps";
51
51
  export * from "./DataGridEx";
52
52
  export * from "./DataGridRenderers";
53
+ export * from "./DataLoadField";
53
54
  export * from "./DataSteps";
54
55
  export * from "./DataTable";
55
56
  export * from "./DialogButton";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etsoo/materialui",
3
- "version": "1.5.63",
3
+ "version": "1.5.65",
4
4
  "description": "TypeScript Material-UI Implementation",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/mjs/index.js",
@@ -39,14 +39,14 @@
39
39
  "@dnd-kit/core": "^6.3.1",
40
40
  "@dnd-kit/sortable": "^10.0.0",
41
41
  "@emotion/react": "^11.14.0",
42
- "@emotion/styled": "^11.14.0",
42
+ "@emotion/styled": "^11.14.1",
43
43
  "@etsoo/appscript": "^1.6.41",
44
44
  "@etsoo/notificationbase": "^1.1.63",
45
45
  "@etsoo/react": "^1.8.49",
46
46
  "@etsoo/shared": "^1.2.75",
47
- "@mui/icons-material": "^7.1.2",
48
- "@mui/material": "^7.1.2",
49
- "@mui/x-data-grid": "^8.5.3",
47
+ "@mui/icons-material": "^7.2.0",
48
+ "@mui/material": "^7.2.0",
49
+ "@mui/x-data-grid": "^8.7.0",
50
50
  "chart.js": "^4.5.0",
51
51
  "chartjs-plugin-datalabels": "^2.2.0",
52
52
  "dompurify": "^3.2.6",
@@ -57,7 +57,7 @@
57
57
  "react-avatar-editor": "^13.0.2",
58
58
  "react-chartjs-2": "^5.3.0",
59
59
  "react-dom": "^18.3.1",
60
- "react-draggable": "^4.4.6",
60
+ "react-draggable": "^4.5.0",
61
61
  "react-imask": "7.6.1"
62
62
  },
63
63
  "overrides": {
@@ -66,13 +66,13 @@
66
66
  "@emotion/react": "$@emotion/react"
67
67
  },
68
68
  "devDependencies": {
69
- "@babel/cli": "^7.27.2",
70
- "@babel/core": "^7.27.4",
71
- "@babel/plugin-transform-runtime": "^7.27.4",
72
- "@babel/preset-env": "^7.27.2",
69
+ "@babel/cli": "^7.28.0",
70
+ "@babel/core": "^7.28.0",
71
+ "@babel/plugin-transform-runtime": "^7.28.0",
72
+ "@babel/preset-env": "^7.28.0",
73
73
  "@babel/preset-react": "^7.27.1",
74
74
  "@babel/preset-typescript": "^7.27.1",
75
- "@babel/runtime-corejs3": "^7.27.6",
75
+ "@babel/runtime-corejs3": "^7.28.0",
76
76
  "@testing-library/react": "^16.3.0",
77
77
  "@types/pica": "^9.0.5",
78
78
  "@types/pulltorefreshjs": "^0.1.7",
@@ -81,7 +81,7 @@
81
81
  "@types/react-dom": "^18.3.7",
82
82
  "@types/react-input-mask": "^3.0.6",
83
83
  "@types/react-window": "^1.8.8",
84
- "@vitejs/plugin-react": "^4.5.2",
84
+ "@vitejs/plugin-react": "^4.6.0",
85
85
  "jsdom": "^26.1.0",
86
86
  "typescript": "^5.8.3",
87
87
  "vitest": "^3.2.4"
@@ -0,0 +1,40 @@
1
+ import React from "react";
2
+ import { InputField, InputFieldProps } from "./InputField";
3
+
4
+ /**
5
+ * Data load field properties
6
+ */
7
+ export type DataLoadFieldProps = InputFieldProps & {
8
+ /**
9
+ *
10
+ * Load data handler
11
+ */
12
+ loadData: () => Promise<string | undefined>;
13
+ };
14
+
15
+ /**
16
+ * Data load field component
17
+ * @param props Properties
18
+ * @returns Component
19
+ */
20
+ export function DataLoadField(props: DataLoadFieldProps) {
21
+ // Destruct
22
+ const { disabled = true, fullWidth = true, loadData, ...rest } = props;
23
+
24
+ // Ref
25
+ const inputRef = React.useRef<HTMLInputElement>(null);
26
+
27
+ React.useEffect(() => {
28
+ loadData().then((data) => (inputRef.current!.value = data ?? ""));
29
+ }, [loadData]);
30
+
31
+ // Layout
32
+ return (
33
+ <InputField
34
+ disabled={disabled}
35
+ fullWidth={fullWidth}
36
+ inputRef={inputRef}
37
+ {...rest}
38
+ />
39
+ );
40
+ }
@@ -14,14 +14,14 @@ export type JsonDataInputProps = Omit<InputFieldProps, "multiple">;
14
14
  */
15
15
  export function JsonDataInput(props: JsonDataInputProps) {
16
16
  // Destruct
17
- const { onChange, rows = 3, ...rest } = props;
17
+ const { error, helperText, onChange, rows = 3, ...rest } = props;
18
18
 
19
19
  // Global app
20
20
  const app = useRequiredAppContext();
21
21
  const jsonError = app.get("jsonDataError") ?? "JSON format error";
22
22
 
23
23
  // Error message
24
- const [error, setError] = React.useState<string>();
24
+ const [localError, setError] = React.useState<string>();
25
25
 
26
26
  // Layout
27
27
  return (
@@ -29,8 +29,8 @@ export function JsonDataInput(props: JsonDataInputProps) {
29
29
  multiline
30
30
  rows={rows}
31
31
  {...rest}
32
- error={!!error}
33
- helperText={error}
32
+ error={localError ? true : error}
33
+ helperText={localError ?? helperText}
34
34
  onChange={(e) => {
35
35
  if (onChange) {
36
36
  onChange(e);
package/src/index.ts CHANGED
@@ -56,6 +56,7 @@ export * from "./CultureDataTable";
56
56
  export * from "./CustomFabProps";
57
57
  export * from "./DataGridEx";
58
58
  export * from "./DataGridRenderers";
59
+ export * from "./DataLoadField";
59
60
  export * from "./DataSteps";
60
61
  export * from "./DataTable";
61
62
  export * from "./DialogButton";